我想在行中编写数据并创建列
如果我做错了,请更正我的代码
我想要像上面的截图一样写出结果。
但它不起作用,我是专家。请点赞这个
public void writeExcel(String excelPath,String sheetName,String[] dataToWrite) throws IOException{
File src = new File(excelPath);
FileInputStream fis = new FileInputStream(src);
XSSFWorkbook wb = new XSSFWorkbook(fis);
XSSFSheet sheet1 = wb.getSheet(sheetName);
int rowCount = sheet1.getLastRowNum()-sheet1.getFirstRowNum();
//Row row = sheet1.getRow(0);
//Row newRow = sheet1.createRow(rowCount);
int colCount = sheet1.getRow(0).getLastCellNum();
System.out.println(rowCount);
//System.out.println(newRow);
System.out.println(colCount);
for(int j = 0; j < colCount; j++){
sheet1.getRow(0).createCell(j+1).setCellValue("Pass");
// Cell cell = newRow.createCell(j);
// cell.setCellValue(dataToWrite[j]);
}
fis.close();
FileOutputStream fout = new FileOutputStream(src);
wb.write(fout);
wb.close();
}
答案 0 :(得分:0)
“for loop”是你个案中的表演限制。它正在尝试根据您的代码在第一行中创建“已存在”第一个单元格,因为您从0开始j值,行值也为0。
所以下面的代码可能适合你,for循环看起来像:
for(int j = 0; j < sheet1.getLastRowNum(); j++){
sheet1.getRow(0).createCell(colCount).setCellValue("Pass");
}