2017-08-11 2 views
0

enter image description heredonnées multiples de la liste Array affiche pas dans tout rang convertir dans Excel dans Android

Dans un multiple Arraylist données ne première ligne est montrer

valeur d'un Arraylist est comme:

ArrayListHeaderCall: [Date, Latex Received (In Liter), Residual Scrap (In Kg) :, No Of Tray :, Sent To Factory :] 

ArrayListExcelCall: [[2017-08-11, 334, 34, 11, Yes], [2017-08-10, 25, 54, 69, Yes]] 

code Excel est donné ci-dessous:

ArrayList<List<String>> modelArrayList; 
    ArrayList<String>pdfArrayListHeader; 

File file = new File(directory + timeStamp + ".xls"); 
      WorkbookSettings wbSettings = new WorkbookSettings(); 
      wbSettings.setLocale(new Locale("en", "EN")); 
      WritableWorkbook workbook; 
      workbook = Workbook.createWorkbook(file, wbSettings); 
      //Excel sheet name. 0 represents first sheet 
      WritableSheet sheet = workbook.createSheet("userList", 0); 
      // column and row 


      for (int x=0;x<pdfArrayListHeader.size();x++){ 
       for (int y=x;y<pdfArrayListHeader.size();y++) { 
        sheet.addCell(new Label(y, 0, pdfArrayListHeader.get(y))); 
       } 
       Log.v("ArrayListHeader",pdfArrayListHeader.get(x)); 
      } 

      int count=1; 
      for(List<String> arrayList1 : modelArrayList){ 
       Log.v("arrayList1",arrayList1.toString()); 
       for (int i=0;i<arrayList1.size();i++){ 
        for (int j=0;j<arrayList1.size();j++){ 
         sheet.addCell(new Label(j, count, arrayList1.get(j))); 
         Log.v("countInside", String.valueOf(count)); 
        } 
        Log.v("ArrayListLoop",arrayList1.get(i)); 
        workbook.write(); 
       } 
       count++; 
       Log.v("count", String.valueOf(count)); 
      } 

Ceci est tout Ple de code ase me donner une solution

Répondre

0

Écrire workbook.write(); en dehors de la boucle

for(List<String> arrayList1 : modelArrayList){ 
       Log.v("arrayList1",arrayList1.toString()); 
       for (int i=0;i<arrayList1.size();i++){ 
        for (int j=0;j<arrayList1.size();j++){ 
         sheet.addCell(new Label(j, count, arrayList1.get(j))); 
         Log.v("countInside", String.valueOf(count)); 
        } 
        Log.v("ArrayListLoop",arrayList1.get(i)); 
       } 
       count++; 
       **workbook.write();** 
       Log.v("count", String.valueOf(count)); 
      }