找了很久也没找到这样的资料!!!比较急请大家帮帮忙!怎么修改下面的代码才可以不覆盖原来的内容啊?public static void main(String[] args) throws Exception {
 FileOutputStream fos = new FileOutputStream("excel/foo.xls");
 HSSFWorkbook wb = new HSSFWorkbook();
 HSSFSheet s = wb.createSheet();
 wb.setSheetName(0, "Matrix");
 for(short i=0; i<10; i++) {
  HSSFRow row = s.createRow(i);
  for(short j=0; j<10; j++) {
   HSSFCell cell = row.createCell(j);
   cell.setCellValue(""+i+","+j);
  }
 }
 wb.write(fos);
 fos.close();
}

解决方案 »

  1.   

    说白了就是修改XLS的内容,在jxl里是sheet.addCell(new Label(x,y,"数据"));x,y为单元格的坐标
    poi我没用过,不过操作应该差不多
      

  2.   

    你的程序好像是每次都新建一个文件,不应该这样,应该打开修改才是
    HSSFSheet s = wb.createSheet();应该是打开一个存在的文件,你这是建立一个新的
    jxl语句供参考:Workbook wb=Workbook.getWorkbook(new File("测试.xls"));
    这里是getWorkbook不是new
      

  3.   

    我也遇到过这个问题。。你把HSSFSheet s = wb.createSheet();
    wb.setSheetName(0, "Matrix");改成:HSSFSheet s = wb.getSheetAt(0);就行了。。为了避免覆盖,后面最好跟上判断语句。。比如:HSSFSheet s = wb.getSheetAt(0);
    HSSFRow row = s.getRow(i);       if (row == null)
       row = s.createRow(i);
      
       HSSFCell cell = row.getCell((short)j);
       if (cell == null)
       cell = row.createCell((short)j);