gpt4 book ai didi

c# - 使用 epplus 创建临时 excel 文件?

转载 作者:太空宇宙 更新时间:2023-11-03 23:37:04 25 4
gpt4 key购买 nike

用epplus将我想要的全部添加到新创建的excel文件中后,如何只打开它?我不想先保存文件再打开它,这可能吗?我希望它只是打开并让用户决定是否要保存它。

到目前为止我找到并尝试过的唯一代码生成文件名,保存 excel 文件,然后打开它。

Byte[] bin = p.GetAsByteArray();
string file = Guid.NewGuid().ToString() + ".xlsx";
File.WriteAllBytes(file, bin);
ProcessStartInfo pi = new ProcessStartInfo(file);
Process.Start(pi);

最佳答案

EPPlus 正在重命名的 zip 文件中生成 xml,因此没有任何机制可以将其传输到 Excel 而不将其保存在某个地方。但是你总是可以保存到用户的临时文件夹——这是大多数程序在某些时候必须做的,以便在彼此之间传输文件。可以使用 System.IO.Path.GetTempPath() 做这样的事情:

[TestMethod]
public void TempFolderTest()
{
var path = Path.Combine(Path.GetTempPath(), "temp.xlsx");
var tempfile = new FileInfo(path);
if (tempfile.Exists)
tempfile.Delete();

//Save the file
using (var pck = new ExcelPackage(tempfile))
{
var ws = pck.Workbook.Worksheets.Add("Demo");
ws.Cells[1, 2].Value = "Excel Test";
pck.Save();
}

//open the file
Process.Start(tempfile.FullName);
}

(取自:Open ExcelPackage Object with Excel application without saving it on local file path)

关于c# - 使用 epplus 创建临时 excel 文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30271678/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com