gpt4 book ai didi

c# - 上传 docx 损坏文件

转载 作者:太空宇宙 更新时间:2023-11-03 22:17:33 24 4
gpt4 key购买 nike

我正在使用下面的代码上传文件。文件上传没有错误,但是当我打开一个扩展名为 .docx 的文件时,M$ 说文件已损坏。但是,它能够修复文件然后打开。我想解决此问题,以便正确打开文档。

string strExtension = Path.GetExtension(context.Request.Files[0].FileName).ToLower();
string fileName = @"C:\" + Guid.NewGuid().ToString() + strExtension;
using (FileStream fs = new FileStream(fileName, FileMode.CreateNew))
{
byte[] bytes = new byte[16 * 1024];

int bytesRead;
while ((bytesRead = context.Request.InputStream.Read(bytes, 0, bytes.Length)) > 0)
{
fs.Write(bytes, 0, bytesRead);
}
}

谢谢。

编辑:

使用此代码正确保存文件:

while ((bytesRead = context.Request.Files[0].InputStream.Read(bytes, 0, bytes.Length)) > 0)

也可以使用 context.Request.Files[0].SaveAs(...); 正确保存

最佳答案

看起来您正在阅读 HttpRequest.InputStream .更好的做法是检查 HttpRequest.Files收藏。

(或者更简单,使用 FileUpload 服务器控件)。

您的代码正在将原始输入(很可能是多部分)复制到一个文件中。

关于c# - 上传 docx 损坏文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4505111/

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