Dou*_*zey 5 spreadsheetlight .net-core
执行dBWorksheet.SaveAs(xlsFileSpec)下面的代码时,我看到一个异常:
“在更新模式下无法多次打开条目。”
SLDocument dBWorksheet = new SLDocument();
TimeSpan interval = new TimeSpan(0, 0, 2);
dBWorksheet.SetCellValue(2, 1, "Hour");
dBWorksheet.SetCellValue(3, 1, "Time");
int Row = 3;
// Create the hour and time of day columns.
for(TimeSpan dBTime = new TimeSpan(0, 0, 0); dBTime.TotalHours < 24; dBTime = dBTime.Add(interval))
{
dBWorksheet.SetCellValue(Row, 1, dBTime.Hours);
dBWorksheet.SetCellValue(Row, 2, dBTime.ToString());
Row++;
}
// Save the new worksheet.
dBWorksheet.SaveAs(xlsFileSpec);
Run Code Online (Sandbox Code Playgroud)
小智 2
我是这样解决的。
下载 SpreadsheetLight(版本 3.5)的源代码。 http://spreadsheetlight.com/downloads/SpreadsheetLight3.5.zip
创建了一个名为“SpreadsheetLight”的 .NET Core 库项目,并向其中添加了必要的 NuGet 包(DocumentFormat.OpenXML 和 System.Drawing.Common)。将所有下载的源代码文件复制并粘贴到该项目中。
将项目“SpreadsheetLight”添加到我的解决方案中,并在现有项目之一中引用它。
在“SLDocument.cs”文件中,对方法“LoadDocumentProperties()”进行以下更改,使代码如下所示:
// XDocument xdoc = XDocument.Load(XmlReader.Create(xl.CoreFilePropertiesPart.GetStream()));
Stream stream = xl.CoreFilePropertiesPart.GetStream();
XDocument xdoc = XDocument.Load(XmlReader.Create(stream));
foreach (XElement xelem in xdoc.Descendants())
{
// Code omitted.
}
stream.Close();
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
8362 次 |
| 最近记录: |