2012-06-28 82 views
1

我有一個ListString管道分隔的對象。是這樣的:寫一個列表實例到Excel文件 - Apache POI

String1|String2|String3 
String4|String5|String6 
... 

使用Apache POI爲Excel庫,是有可能遍歷整個列表寫出來的字符串對象爲在Excel中的每一行文件?即是這樣的:

for (String inst : <List instance>) 
     <sheetInstance>.write(inst) 

即直接輸出字符串到Excel作爲一個行條目,而不是一個字符串即

setting row 1, cell 1 = String1 
setting row 1, cell 2 = String2 
setting row 1, cell 3 = String3 
setting row 2, cell 1 = String4 ... 

目前設置每個單元格的值,它看起來像我需要將單個單元格設置爲每個值。

+0

我並不清楚明白你的問題,但據我所知,你必須做的以小區爲單位寫作。這是不可能的連續寫入後續單元格,至少不是當我上次使用POI時。 – zeller

回答

4

您需要的String分成數組,以填充細胞,就像這樣:

for (short rowIndex = 0; rowIndex < stringList.length(); rowIndex++) { 
    Row row = sheet.createRow(rowIndex); 
    String[] cellValues = stringList.get(rowIndex).split("|"); 
    for (int colIndex = 0; colIndex < cellValues.length; colIndex++) { 
     Cell cell = row.createCell(colIndex); 
     cell.setCellValue(cellValues[colIndex]); 
    } 
}