我们在导入excel时候,通常会大批量数据导入,但是容易发生Exception in thread "main" java.lang.OutOfMemoryError: Java heap space的内存溢出.
通常写法大致如下:
//定义sheet以及workbook对象部分略
FileOutputStream fos = new FileOutputStream("D://test//test0215.xlsx");
for (int i = 0; i < 100000; i++) {
sheet.createRow(i).createCell(0).setCellValue(1);
}
可以修改此导出方式,仅仅通过流的方式写入文件,可以避免创建大批量的对象时内存溢出.代码如下可以作为参考:
public static boolean createExcelFileByStream(String path, List list) {
try {
//定义表头
String userxlsinfo = "序号\t用户ID\t姓名\t手机\t留言信息";
File file = new File("c:\\streamExcel.xls");
if (file.isFile()) {
file.mkdir();
}
FileOutputStream out = new FileOutputStream(file);
OutputStreamWriter osw = new OutputStreamWriter(out, "GB2312");
BufferedWriter bw = new BufferedWriter(osw);
// 创建表头
String sheader = userxlsinfo;
sheader += "\r\n";
bw.write(sheader);
if (list != null) {
// List list 此处可以遍历list对象
for (int i = 0; i < 5; i++) {
StringBuffer mess = new StringBuffer();
// 用户信息
mess.append((i + 1) + "\t");
mess.append((i + 1) + "\t");
mess.append((i + 1) + "\t");
mess.append((i + 1) + "\t");
mess.append((i + 1) + "\t");
mess.append("\r\n");
System.out.println(i);
bw.write(mess.toString());
}
}
bw.close();
osw.close();
out.close();
return true;
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
return false;
}
注意:表头部分和数据部分的间隔一定要用'\t ' 如果改用','号则导出文件用excel打开展示会有问题.
分享到:
相关推荐
本文将详细介绍如何使用C++通过fstream文件流来实现Excel文件的写入。 首先,C++标准库中的fstream是处理输入/输出流的核心组件,它可以用于与各种类型的文件进行交互,包括文本文件和二进制文件。对于Excel文件,...
本篇将深入探讨如何使用C#通过流来写入数据到文件,以及涉及到的字节流读写文件的技巧。 首先,我们来看一个简单的例子,这个例子展示了如何使用FileStream和StreamWriter类来写入文本数据到文件。以下代码创建了一...
2. **写入Excel文件**: - 创建工作簿:使用`XSSFWorkbook`类创建一个新的Excel工作簿对象。 - 创建工作表:在工作簿中创建新的工作表,可以设置工作表的名称。 - 创建行和单元格:在工作表中添加行,并在行中...
本示例将介绍如何使用Java创建Excel文件并写入数据,主要涉及的库是`jxl`,这是一个用于读写Excel文件的开源Java库。 首先,我们需要引入`jxl`库。`jxl.jar`包含了一系列的类和接口,用于处理Excel文件的各种操作。...
写入Excel文件的流程类似,只是需要创建一个新的Workbook对象,然后使用`Sheet.createRow(int rowIndex)`创建行,`Row.createCell(int cellIndex)`创建单元格,最后使用`Workbook.write(OutputStream)`方法将内容...
本篇文章将详细讲解如何在编程环境中读取和写入Excel文件,特别是如何写入到Excel的指定位置。我们将探讨相关的编程技术和工具,以帮助你更好地实现这一功能。 首先,我们需要了解的是,读写Excel文件通常涉及到...
在IT行业中,处理数据是日常任务之一,而Excel文件作为数据存储和分析的...通过这个实例,开发者不仅能学会如何读取和写入Excel,还能了解到如何处理不同版本的Excel文件,以及在遇到错误时如何进行有效的异常处理。
在Java编程中,将图片写入Excel文件是一项常见的任务,特别是在数据分析、报表生成或数据可视化的情景下。这里,我们将详细探讨如何实现这个功能,主要依赖于`Apache POI`库来操作Excel,并结合`JFreeChart`库来创建...
9. **写入Excel文件**: 创建新的Excel文件或修改已有的,你可以通过创建工作簿、工作表,添加行和单元格,设置值和样式,然后保存到磁盘。 10. **数据导入导出**: 在企业级应用中,NPOI常用于从数据库或其他数据源...
【Java生成写入Excel文件】知识点详解 在Java编程中,生成并写入Excel文件是一项常见的任务,尤其在数据导出、报表生成等场景中。本篇将详细讲解如何使用Apache POI库来实现这个功能,该库是Java中处理Microsoft ...
通过Response流,我们可以将数据库数据导出到Excel文件中。 导出Excel文件 在上面的代码中,我们使用了Response流将数据库数据导出到Excel文件中。该代码主要实现了以下几个步骤: 1. 首先,我们设置Response流的...
3. **写入Excel文件** - **创建新的工作簿**:使用`new HSSFWorkbook()`或`new XSSFWorkbook()`创建一个新的工作簿实例。 - **添加工作表**:调用`workbook.CreateSheet(name)`方法为工作簿添加新的工作表。 - **...
3. **创建Excel文件**:虽然没有直接提供创建新Excel文件的方法,但可以推测,通过实例化`HSSFWorkbook`并使用`FileOutputStream`写入文件即可创建新的Excel文件。 4. **删除Excel文件**:由于没有内建的删除方法,...
通过以上介绍,你应该能使用PhpSpreadsheet库在高版本PHP中流畅地读取和写入Excel文件。这个库不仅功能强大,而且易于使用,是处理Excel文件的得力助手。记得在实际项目中根据需要调整代码,以适应具体的需求。
通过组合使用这些模块,我们可以轻松地将数据写入已存在的 Excel 文件。 在实际应用中,将数据写入已存在的 Excel 文件可以有多种应用场景。例如,在数据分析过程中,我们可以使用 Python 将数据写入已存在的 Excel...
这里主要涉及到两个步骤:一是获取DataGrid中的数据,二是创建Excel文件并写入这些数据。 1. **获取DataGrid数据**:DataGrid的数据通常是从数据源(如SQL Server数据库、XML文件或数组)绑定而来的。在导出前,...
Excel文件的读取和写入是常见的操作,特别是在需要处理大量数据时。本教程将详细讲解如何使用编程方式来读取多个Excel工作表(sheet)并将其合并到一个新的单一工作表中。 首先,我们需要一个库来帮助我们进行读写...
利用NPOI导出Excel文件,写入到内存流中,输出文件下载
本示例资源提供了一个RAR压缩包,包含了实现这一功能的源代码,主要讲解了两个核心部分:一是如何将数据写入Excel文件并保存在本地,二是如何在Web环境中将数据库中的数据导出为Excel并允许用户下载。 首先,我们要...
总之,通过集成Apache POI和BeanShell,JMeter可以轻松地处理Excel文件,实现数据读取和写入,这对于构建复杂和灵活的测试计划是非常有用的。不过,使用时要考虑性能和资源消耗,选择最适合的解决方案。