我用java poi在excel第一行写入表头后,怎么从第二行开始循环写入一个list集合?
现在我的代码开始写第二行时,会把第一行的覆盖掉。求大神!HSSFRowrow=sheet.createRow(0);String[]headers=newString[]...
现在我的代码开始写第二行时,会把第一行的覆盖掉。求大神!
HSSFRow row = sheet.createRow(0);
String[] headers = new String[] { "一级菜单", "二级菜单", "model", "request", "code",
"时间", "备注"};
for (int i = 0; i < headers.length; i++) {
HSSFCell cell = row.createCell(i);
HSSFRichTextString text = new HSSFRichTextString(headers[i]);
cell.setCellValue(text);
cell.setCellStyle(style);
//设置单元格格式为字符串类型
cell.setCellType(HSSFCell.ENCODING_UTF_16);
//设置字体
HSSFFont font = workbook.createFont();
font.setFontName("宋体");
font.setFontHeight((short) 250);
style.setFont(font);
//填充表头的单元格颜色
style.setFillForegroundColor(HSSFColor.LIME.index);
style.setFillBackgroundColor(HSSFColor.YELLOW.index);
style.setFillPattern(HSSFCellStyle.SOLID_FOREGROUND);
//应用上面的单元格设置
cell.setCellStyle(style);
}
for(int i = 1; i < list.size(); i++){
HSSFRow rows = sheet.createRow(i);
String s = list.get(i);
System.out.println(s);
HSSFCell cell = row.createCell(i);
cell.setCellValue(s);//写入内容
} 展开
HSSFRow row = sheet.createRow(0);
String[] headers = new String[] { "一级菜单", "二级菜单", "model", "request", "code",
"时间", "备注"};
for (int i = 0; i < headers.length; i++) {
HSSFCell cell = row.createCell(i);
HSSFRichTextString text = new HSSFRichTextString(headers[i]);
cell.setCellValue(text);
cell.setCellStyle(style);
//设置单元格格式为字符串类型
cell.setCellType(HSSFCell.ENCODING_UTF_16);
//设置字体
HSSFFont font = workbook.createFont();
font.setFontName("宋体");
font.setFontHeight((short) 250);
style.setFont(font);
//填充表头的单元格颜色
style.setFillForegroundColor(HSSFColor.LIME.index);
style.setFillBackgroundColor(HSSFColor.YELLOW.index);
style.setFillPattern(HSSFCellStyle.SOLID_FOREGROUND);
//应用上面的单元格设置
cell.setCellStyle(style);
}
for(int i = 1; i < list.size(); i++){
HSSFRow rows = sheet.createRow(i);
String s = list.get(i);
System.out.println(s);
HSSFCell cell = row.createCell(i);
cell.setCellValue(s);//写入内容
} 展开
1个回答
2014-07-10
展开全部
HSSFRow rows = sheet.createRow(1);
for(int i = 0; i < list.size(); i++){
String s = list.get(i);
System.out.println(s);
HSSFCell cell = row.createCell(i);
cell.setCellValue(s);//写入内容
}
我猜你是想这么写
追问
还是从第一行写入的,把表头覆盖了
追答
HSSFRow rows = sheet.createRow(2);
不科学
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询