在Web C#应用程序中读取excel,搜索和替换文本片段

时间:2017-05-03 14:51:31

标签: c# .net excel openxml excel-interop

我有一个excel文件,需要访问,替换部分文本并下载更改的文件。 但是我无法保存更改,我应该始终将版本保留在服务器上。

我做了几次搜索,但我只能更改文件并保存更改。

我尝试使用下面的链接解决,我设法搜索并更改了文件,但我不知道如何下载并停止保存更改。

Find and replace text in Excel using C#

非常感谢

1 个答案:

答案 0 :(得分:1)

将文件读入内存流。进行更改并将其写入字节数组。使用字节数组bytesInstream进行下载,原始文件保持不变。

byte[] byteArray = File.ReadAllBytes("excelFile.xlsx");
using (MemoryStream ms = new MemoryStream())
{
    ms.Write(byteArray, 0, (int)byteArray.Length);
    using (SpreadsheetDocument  doc = SpreadsheetDocument.Open(ms, true))
    {
       // Do work here
    }
    // Convert it to byte array 
    byte[] bytesInStream = ms.ToArray();
}

我假设您使用openxml进行更改。