shaoan886 2014-11-24 03:19 采纳率: 0%
浏览 2365

C# 通过ftp 下载文件失效

C# 通过ftp 下载文件失效?
下载下来的文件大小与服务器上大小相同,但是无法使用此文件.
也不报错,没异常,偶发性的.
通过vpn连到公司内网,再下载文件出现这样的情况比较高.
下载的文件是图片.查看图片时 下载的文件可能已损坏损毁或者过大.
蛋碎...跪求大神解决

  • 写回答

1条回答

  • shaoan886 2014-11-24 03:22
    关注

    现在我来贴一下代码` FileStream outputStream = FileOperate.FileCreateGetStream(filePath + "\" + fileName);
    try
    {
    FtpWebRequest reqFTP;
    reqFTP = (FtpWebRequest)FtpWebRequest.Create(new Uri(ftpURI + fileName));
    reqFTP.Credentials = new NetworkCredential(ftpUserID, ftpPassword);
    reqFTP.Proxy = null;
    reqFTP.Method = WebRequestMethods.Ftp.DownloadFile;
    reqFTP.UseBinary = true;
    FtpWebResponse response = (FtpWebResponse)reqFTP.GetResponse();
    Stream ftpStream = response.GetResponseStream();
    // long cl = response.ContentLength;
    int bufferSize = 2048;
    int readCount;

    byte[] buffer = new byte[bufferSize];
    readCount = ftpStream.Read(buffer, 0, bufferSize);

               //ftpStream.pe
                while (readCount > 0)
                {
                    outputStream.Write(buffer, 0, readCount);
                    readCount = ftpStream.Read(buffer, 0, bufferSize);
    
                }
                outputStream.Flush();
                ftpStream.Close();
                response.Close();
                //outputStream.Close();
                //response.Close();
            }
            catch (Exception ex)
            {
                throw new Exception(ex.Message);
            }
            finally 
            {
                outputStream.Close();
                outputStream.Dispose();
            }`
    
    评论

报告相同问题?

悬赏问题

  • ¥15 运筹学排序问题的应用
  • ¥15 ubuntu子系统密码忘记
  • ¥15 信号傅里叶变换在matlab上遇到的小问题请求帮助
  • ¥15 保护模式-系统加载-段寄存器
  • ¥15 电脑桌面设定一个区域禁止鼠标操作
  • ¥15 求NPF226060磁芯的详细资料
  • ¥15 使用R语言marginaleffects包进行边际效应图绘制
  • ¥20 usb设备兼容性问题
  • ¥15 错误(10048): “调用exui内部功能”库命令的参数“参数4”不能接受空数据。怎么解决啊
  • ¥15 安装svn网络有问题怎么办