C# OpenXml SpreadsheetDocument SaveAs()生成损坏的文档-为什么?
这段极其简单的代码创建了一个Excel无法打开的文件。C# OpenXml SpreadsheetDocument SaveAs()生成损坏的文档-为什么?,c#,excel,openxml,C#,Excel,Openxml,这段极其简单的代码创建了一个Excel无法打开的文件。 这怎么会失败呢 using (SpreadsheetDocument doc = SpreadsheetDocument.Open(@"c:\dir\src.xlsx", true)) { doc.SaveAs(@"c:\dir\saved.xlsx"); } 注: Excel不会打开saved.xlsx src.xlsx已知存在且有效(Excel打开它没有问题) 确实生成了saved.xls
这怎么会失败呢
using (SpreadsheetDocument doc = SpreadsheetDocument.Open(@"c:\dir\src.xlsx", true))
{
doc.SaveAs(@"c:\dir\saved.xlsx");
}
注:
- Excel不会打开saved.xlsx
- src.xlsx已知存在且有效(Excel打开它没有问题)
- 确实生成了saved.xlsx,尽管它比src.xlsx小约500字节
该问题是由于通过OpenXmlRight访问时在Excel中打开src.xlsx造成的。解决方法是在运行过程中停止调试或关闭Excel程序。