- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我对 SpreadSheetLight 有疑问。当我使用 SaveAs 方法时,它使用大约 1.2GB 的 RAM。我写了大约 6k 条记录,输出文件只有 6MB。其他人有这个问题吗?
另存为代码在这里:
using (var stream = new MemoryStream(Templates.BudgetTemplate))
{
using (var doc = new SLDocument(stream))
{
doc.SelectWorksheet("Sheet");
var i = 2; //first line is header
var list = new List<object>(); //list initialization from DB Collection
foreach (var item in list)
{
//doc.SetCellValue stuff, from A to AN columns
i++;
}
doc.SaveAs(_path);
}
}
最佳答案
这可能与文件大小缓冲区有关。就像运行 Excel 会占用数兆字节的 RAM 只是为了让您可以编写一个 20 KB 的文件一样,SpreadsheetLight 做类似的事情。
我们谈论的是 Open XML 电子表格,所以从技术上讲,整套 XML 文件都保存在内存中(在保存时)。例如,压缩文件时,将整个文本文件保存在内存中,然后将其压缩成一个较小的文件。这就是为什么 SpreadsheetLight(和其他库)比最终生成的文件占用更多 RAM。
关于c# - Spreadsheetlight 内存使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18661272/
有谁知道是否可以在 SpreadsheetLight 中检索公式的数值?如果没有,可以将 OpenXml 中的公式读取为数字吗? 我需要为 cellValue(8,1) 返回 7.07 publi
我正在使用 SpreadsheetLight从 WinForms 项目写入日志文件。我的目的是将日志条目写入同一文件中的三个工作表,我真的想避免使用 Interop如果我能避免的话。 我从一个用 Ex
我对 SpreadSheetLight 有疑问。当我使用 SaveAs 方法时,它使用大约 1.2GB 的 RAM。我写了大约 6k 条记录,输出文件只有 6MB。其他人有这个问题吗? 另存为代码在这
我正在寻找一个类似于 DataTable.Rows.Count 的函数,它可以与 SLDocument 一起使用以查明有多少行包含数据。 SpreadsheetLight 中有可用的东西吗?还有其他实
我发现使用 Excel Interop 创建数据透视表是可能的,但几乎没有。 我现在正在尝试使用 SpreadsheetLight,希望它能更容易,不仅对于 .xlsx 生成的基础知识,而且对于诸如创
我正在尝试使用 SpreadsheetLight 库循环访问工作簿中的未知工作表名称。 在示例中使用 SLDocument sl = new SLDocument("ModifyExistingSpr
有谁知道是否可以在 Spreadsheetlight 中选择范围或 SLcell 列表?我的目标是做一个 foreach 循环。目前我正在使用嵌套的 for 循环。 foreach(SLCell ce
我正在使用 SpreadsheetLight 构建一个带有图表的 Excel 文件。我有一个基于 Excel 文件中一系列数据的图表,但我只想包含图表中某一列的数据。在 Excel 本身中,我可以在“
我是一名优秀的程序员,十分优秀!