gpt4 book ai didi

c# - FileUpload 多次上传1个文件

转载 作者:行者123 更新时间:2023-11-30 14:55:35 27 4
gpt4 key购买 nike

出于某种原因,当我尝试上传多个文件时,所有文件都成为第一个文件的副本。当我说副本时,我指的是不同的文件名、不同的文件扩展名,但所有图像中的图片相同。

例子:

我选择了四个文件。 2个png,2个jpg。所有不同的大小。当我上传它们时,它们是这样的:

  • 1.jpg - 256 kb
  • 2.jpg - 256 kb
  • 3.png - 256 kb
  • 4.png - 256 kb

我对发生这种情况感到非常困惑。 Response.Write 显示文件大小不同,但它们保存为同一文件。

 foreach (HttpPostedFile file in FileUpload1.PostedFiles)
{
// Debugging only - I know Response.Write is bad to use
Response.Write(file.FileName + " - " + file.ContentLength + "<br>");

// Normally a server, set to C for debugging
FileUpload1.SaveAs(Path.Combine("C:\\Uploads"), file.FileName);
}

输出:

 1.png - 270587
2.png - 261286
3.JPG - 1309586
4.JPG - 912675

所以它知道它们是不同的文件,但它对一个文件执行四次。知道为什么吗?

最佳答案

根据 MSDN如果您正在处理多个文件,您应该使用 Request.Files 集合来迭代它们。尝试这样的事情:

 foreach (HttpPostedFile file in Request.Files)
{
// Debugging only - I know Response.Write is bad to use
Response.Write(file.FileName + " - " + file.ContentLength + "<br>");

// Normally a server, set to C for debugging
file.SaveAs(Path.Combine("C:\\Uploads"), file.FileName);
}

关于c# - FileUpload 多次上传1个文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25069253/

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