我是java开发人员,我想将.csv文件转换为.xls 2003格式,以便将我的csv转换为.xls文件,我的.csv文件的结构就像
REC_STATUS,TRADE_ID,SETTLEMENT_DATE,TRADE_EFFECTIVE_DATE,PAYMENT_TYPE,VERSION,BREAK_DOWN_BUCKET,CAUSE,NUM_CASHFLOWS_AFFECTED,PROFILE
Found only in File :B,178942690,01-Feb-16,03-Dec-14,"Coupon",5,NOISY_BREAK_BUCKET,REC_TOOL_ISSUE_PAYMENT_DIRECTION_MISMATCH | REC_TOOL_ISSUE_NOTIONAL_MISMATCH | TRADE_VERSION,1,AVS Offshore
Found only in File :B,197728700,Various,21-Dec-15,"Coupon,(x20)",2,ACTUAL DATA BREAK BUCKET,ACTUAL_DATA_BREAK,20,AVS Offshore
现在我已使用open csv解析器(http://opencsv.sourceforge.net/)
进行此操作并编码如下所示
CSVReader reader = new CSVReader(
new FileReader("c:/xxx.csv"), ',', '"');
// Read all rows at once
List<String[]> allRows = reader.readAll();
现在请在阅读后告知我想以类似的方式创建一个.xls工作簿,上面创建了.csv所以我必须首先阅读这些值,我必须阅读标题然后相应的值,并且必须将它们写入。 xls 2003格式请告诉我如何实现这一点我正在使用POI 3.10版本
请各位建议如何将数组内容放入工作簿中
enter code here
答案 0 :(得分:0)
class Handle
{
public static void data(List list,String path)
{
Workbook wb = new XSSFWorkbook();
HSSFSheet sheet = (HSSFSheet) wb.createSheet("Sheet");
int i=0;
while(i<list.size())
{
HSSFRow row = sheet.createRow(i);
String [] data = (String[]) list.get(i);
int j=0;
while(j<data.length)
{
HSSFCell cell = row.createCell(j);
cell.setCellValue(data[j]);
j++;
}
i++;
}
FileOutputStream fos = new FileOutputStream(path+".xls");
wb.write(fos);
fos.flush();
fos.close();
wb.close();
}
}
正如@gagravarr所说,你可以使用常见的SS类来处理&#39; .xls&#39;&#39;&#39;和&#39; .xlsx&#39;&#39;格式与相同的代码..