2017-03-01 65 views
0

我想一個多維數組導出爲CSV文件。我能得到一組陣列出口,但我有一個不斷增長的陣列CSVWriter不會採取的ArrayList轉換成數組

這裏掙扎是我到目前爲止有:

String[][] data = new String[][] { 
    new String[]{"quick","brown","fox"}, 
    new String[]{"apple","banana","cherry"}, 
    new String[]{"quick","brown","fox"} 
}; 

for(int i=0; i<data.length; i++) { 
     //first line prints "quick", "brown", "fox" etc 
      writer.writeNext(data[i]); 
     } 

現在從我的代碼越來越多,我需要能夠將數組添加到「數據」。

舉例來說,如果我有:

String[] abc = new String[] {"a","b","c"}; 
String[] def = new String[] {"d","e","f"}; 
... 

,我不知道有多少,這些字符串數組中就會有,研究告訴我,我需要這些添加到一個ArrayList中。所以,我想出了這樣的事情:

 List<String[]> stockList = new ArrayList<String[]>(); 
     stockList.add(abc); 
     stockList.add(def); 
     // could potentially add more 

     String[] stockArr = new String[stockList.size()]; 
     stockArr = stockList.toArray(stockArr); 

     for(int i=0; i<data.length; i++) { 
      writer.writeNext(stockArr[i]); 
      Log.i("loop", "here: " + data[i]); 
     } 

除了writeNext不能被應用到一個java字符串。

總體而言,好像我需要有一個字符串數組的ArrayList。然後在最後,將該ArrayList轉換爲一個數組而不會丟失字符串數組?

希望得到任何幫助,謝謝!

回答

1

你有沒有嘗試過這樣的:

for(String[] arr:stockList) { 
    writer.writeNext(arr); 
    Log.i("loop", "here: " + arr); 
} 

更妙的是:

writer.writeAll(stockList);

+0

這樣的作品,謝謝!! – Pam