XSSFWorkbook workbookTitle = new XSSFWorkbook(fileInputStream);
workbook = new SXSSFWorkbook(workbookTitle, maxRows);
font = workbook.createFont();
font.setFontHeightInPoints((short) 9);
font.setFontName(FONT_NAME);
cellTwoDecimal = workbook.createCellStyle();
DataFormat format = workbook.createDataFormat();
cellTwoDecimal.setDataFormat(format.getFormat("0.00"));
cellTwoDecimal.setFont(font);
cellCommon = workbook.createCellStyle();
cellCommon.setFont(font);
cellText = workbook.createCellStyle();
cellText.setDataFormat((short) BuiltinFormats.getBuiltinFormat("text"));
cellText.setFont(font);
cellWrpText = workbook.createCellStyle();
cellWrpText.setWrapText(true);
cellWrpText.setFont(font);
Row row;
Cell cell;
for (int i = 0; i < size; i++) {
row = excelSheet.createRow(rowIndex++);
cell = row.createCell(i);
cell.setCellValue(rowHeader);
cell.setCellStyle(cellCommon);
}
我已经从代码中删除了一些内部逻辑。请分享你的想法。
提前道谢。
根据您的“编辑1”...如果我没理解错的话,你创建的单元格没有任何价值。您不必这样做。如果您不想写一些东西,那么就不要创建空单元格。根据我的POI经验,如果你想写东西,你只需要创建行和单元格。
从这个观点来看,很明显,您的xlsx非常大(很多很多单元格对象)。我认为MS Excel删除了手动保存时的空单元格。
补充:需要提到的是,还有一个问题,样式你的单元格。请尽量少使用CellStyle的实例。如果具有相同样式的单元格,则不要创建具有相同属性的CellStyle的新实例。请应用CellStyle的同一实例。也不要为简单的文本单元格分配样式。在这种情况下,excel使用默认样式(Background='white',textcolor='black',font='any default',size='any default',format='default')。
问题是输出文件的大小大于原始文件 编辑:-我知道的解决方案,即读写文件字节明智,但我的问题是为什么这是发生的?
提前感谢你的帮助
我正在使用PyCharm社区版2016,我注意到我无法打开大型数据输入文件或日志(20MB)。编辑简单地说“文件XXX太大(大小)”。 不仅如此,似乎没有办法改变限制。官方文档提到了一种增加使用intellisense的最大大小的方法,但根本没有增加可以打开的文件的最大大小。这是真的吗?这真的是一个完全无法打开大型日志的IDE吗?
我正在使用的读取XLSX文件。我收到一个错误。后来,对java类使用增加了堆大小,仍然会重复同样的错误。 在上面的代码段中,执行停止在处,并抛出指定的错误。谁能建议更好的方法来读取大的XLSX文件。
问题内容: 这是我希望做的: 我想将ajax请求发送到文件(最好使用jQuery),并且一旦文件被加载,请确定所请求文件的大小。 经过一番谷歌搜索,很显然,我什至对一个正确的问题都不知道要提出这个问题。任何帮助将不胜感激。 问题答案: 您可以发出HTTP HEAD请求,并通过读取Content- Length HTTP标头获得近似的文件大小。 这种请求用于获取有关该请求隐含的URL的元信息,而无需
问题内容: 我想创建一个特定大小的文件(例如1GiB)。内容并不重要,因为我会在其中填充内容。 我正在做的是: 但这需要太长时间才能完成。我花了大约1分钟的时间。有什么可以改善的呢? 问题答案: 警告 此解决方案将提供您可能无法预期的结果。参见UPD … 1创建新文件。 2寻求1个字节的大小。 3写1个字节。 4利润:) UPD: 查找和截断都在我的系统(Linux + ReiserFS)上创建稀