对不起我的英语不好。我使用了图书馆 Epplus,我真的很喜欢它。但我有一个问题:内存不足。无论如何都需要写入大量数据。我想知道是否有可能追加到Excel文件的末尾,而不是存储在所有的内存中。或者创建多个文件,然后连接成一个文件。提前致谢。
问问题
3363 次
1 回答
0
1)如果您从数据库中检索数据,请使用数据阅读器而不是数据表
2)将excel写入临时文件,完成后删除(如果是web环境,使用response.writefile然后删除)
3)先写标题,然后将数据附加到它上面(用我的手机输入)
var pck = new ExcelPackage();
var ws = pck.AddSheet("sheet1");
//write header here
pck.saveas(fileinfo);
pck.dispose(); // not sure if function existed
pck= new excelpage(fileino.fullname);
ws = pck.worksheets[1];
var rowIndex =0;
while (reader.read())
{
if (++rowindex % 100000 == 0)
{
// save and re-open
}
//write row here
}
pck.save();
//dispose / send file / delete file etc
于 2013-11-27T01:03:18.910 回答