相关疑难解决方法(0)

如何从代码库中删除System.out.println

我们有一个巨大的(旧的遗留Java)代码库,其中许多文件(大约5k)都有System.out.println.我们计划因清理/性能原因删除它们.我们如何编写一个脚本来替换它们而不会在代码中引入任何问题?脚本不能盲目删除它们,因为以下情况可能是一个问题:

if ()
  some.code...
else
  System.out.println(...);
DB.close();
Run Code Online (Sandbox Code Playgroud)

我想用';'代替它们.这将照顾上述情况.你还有其他问题吗?还有其他建议吗?

java scripting performance code-cleanup

9
推荐指数
4
解决办法
7624
查看次数

为什么Apache POI OPCPackage close()方法不能保存/写入打开可写文件的内容?

使用以下代码,不会保存对Excel电子表格所做的单元格值更改:

OPCPackage pkg = OPCPackage.open(inputFile);
XSSFWorkbook wb = new XSSFWorkbook(pkg);

ModifyWorkbook();

pkg.close();
Run Code Online (Sandbox Code Playgroud)

以下是我写的解决方法,但我不明白为什么这是必要的.

OPCPackage pkg = OPCPackage.open(inputFile);
XSSFWorkbook wb = new XSSFWorkbook(pkg);

ModifyWorkbook();

File tmp = File.createTempFile("tempSpreadsheet", ".xlsx");
FileOutputStream newExcelFile = new FileOutputStream(tmp);
wb.write(newExcelFile);
newExcelFile.close();
tmp.deleteOnExit();
pkg.close();
Run Code Online (Sandbox Code Playgroud)

关于主题的javadoc和指南表明.close()方法应该保存并关闭.在关闭之前检查已修改的单元格的值是否表示已进行更改,但单独使用pkg.close()方法不足以在关闭时将这些更改写入文件.

java excel apache-poi xssf

6
推荐指数
1
解决办法
6677
查看次数

标签 统计

java ×2

apache-poi ×1

code-cleanup ×1

excel ×1

performance ×1

scripting ×1

xssf ×1