今天我用Java给excel里面写数据,但是只能写最后一行!具体问题我上代码和截图,希望大神能够解答。
public static void xlsOutput(int rows,int columns,String str,String outputUrl) {
// rows是要写的行数
//columns是要写的列数
//str是要写的数据
//outputUrl是要写的路径
try {
FileOutputStream fop=new FileOutputStream(outputUrl);
HSSFWorkbook wb =new HSSFWorkbook();
Sheet sheet=wb.createSheet();
Row row=sheet.createRow(rows);
row.createCell(columns).setCellValue(str);
wb.write(fop);
fop.close();
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
我把写的方法抽成了一个静态的方法,可以通过类调用。
测试案例如下:
public class MyTest3 {
public static void main(String[] args) {
String outputUrl="C:\\Users\\陈庚\\Desktop\\excel表格\\ranking.xls";
XLS.xlsOutput(0,0,"1000",outputUrl);
XLS.xlsOutput(1,0,"1000",outputUrl);
XLS.xlsOutput(2,0,"1000",outputUrl);
XLS.xlsOutput(3,0,"1000",outputUrl);
}
}
按道理,他应该在excel表格的前四行的第一列都有1000这个数据,但是结果只有一行。
结果如下:
希望哪个大神能够解答,万分感谢!