.NET上传电子文件到服务器提示找不到路径

本文分享了使用FileStream进行文件上传时遇到的路径错误问题及解决方案。在服务器部署后出现路径不可达的情况,通过获取HttpFileCollection并读取文件二进制数据成功解决了问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  今天用FileStream做了一个电子文件上传功能,之前一直在本地测试,上传没什么问题!但是一发布到服务器上测试,尼玛问题就来了Could not find a part of the path 'D:\工作目录\日常工作\测试\Manual1.pdf'。路径错误,分析发现是因为程序发布到服务器上,在本地上传就找不到路径了。 

  //创建文件流
       FileStream fsReader = new FileStream(FilePath, FileMode.Open, FileAccess.Read, FileShare.ReadWrite);

用FileStream的方式行不通了,怎么办呢?查找资料发现,可以获取当前请求页面的文件集合
                HttpFileCollection files = HttpContext.Current.Request.Files;

      Stream fileStream;
               fileStream = files[i].InputStream;
               int fileLength=files[i].ContentLength;
                //获取选择的文件的二进制大小
                byte[] btFile = new byte[fileLength];
                fileStream.Read(btFile, 0, fileLength);

通过遍历可以很轻松地获取到文件的二进制了,异常搞定。看来基础还是不行,得好好补补了!

转载于:https://www.cnblogs.com/StevenDu/archive/2013/04/03/NET.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值