请各位帮忙!谢谢!
我有一个excel文件大小为11M左右,使用jxl包更改表格内容出现以下提示:
init:
deps-jar:
compile-single:
run-single:
Exception in thread "main" java.lang.OutOfMemoryError: Java heap space
at jxl.write.biff.WritableSheetImpl.getRowRecord(WritableSheetImpl.java:1223)
at jxl.write.biff.WritableSheetImpl.addCell(WritableSheetImpl.java:1151)
at jxl.write.biff.SheetCopier.shallowCopyCells(SheetCopier.java:945)
at jxl.write.biff.SheetCopier.copySheet(SheetCopier.java:219)
at jxl.write.biff.WritableSheetImpl.copy(WritableSheetImpl.java:1584)
at jxl.write.biff.WritableWorkbookImpl.copyWorkbook(WritableWorkbookImpl.java:971)
at jxl.write.biff.WritableWorkbookImpl.(WritableWorkbookImpl.java:343)
at jxl.Workbook.createWorkbook(Workbook.java:339)
at jxl.Workbook.createWorkbook(Workbook.java:320)
at kangxidic.Main.find_string(Main.java:161)
at kangxidic.Main.main(Main.java:201)
Java Result: 1
生成成功(总时间:16 秒)
附:部分代码
public static void find_string() {
try {
//创建只读的Excel工作薄的对象
Workbook rw = Workbook.getWorkbook(new File("C://kangxi.xls"));
//创建可写入的Excel工作薄对象
WritableWorkbook writeWB = Workbook.createWorkbook(new File("C://kangxi.xls"), rw);
//读取第一张工作表
WritableSheet writeSHT = writeWB.getSheet(0);
//获得第一个单元格对象
WritableCell writeCL = writeSHT.getWritableCell(0, 1);
//判断单元格的类型, 做出相应的转化
if(writeCL.getType() == CellType.LABEL)
{
Label l = (Label)writeCL;
l.setString("aaaaaaaa.");
}
//写入Excel对象
writeWB.write();
//关闭可写入的Excel对象
writeWB.close();
//关闭只读的Excel对象
rw.close();
} catch (Exception e) {
e.printStackTrace();
System.out.println("写入Excel文件失败,可能该文件正在被使用!");
}
}
public static void main(String[] args) {
find_string();
}
[b]问题补充:[/b]
我用的是netbeans,配置参数改过以后还是同样的错误提示!