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 delta降尺度计算的一些细节,有偿
  • ¥15 Arduino红外遥控代码有问题
  • ¥15 数值计算离散正交多项式
  • ¥30 数值计算均差系数编程
  • ¥15 redis-full-check比较 两个集群的数据出错
  • ¥15 Matlab编程问题
  • ¥15 训练的多模态特征融合模型准确度很低怎么办
  • ¥15 kylin启动报错log4j类冲突
  • ¥15 超声波模块测距控制点灯,灯的闪烁很不稳定,经过调试发现测的距离偏大
  • ¥15 import arcpy出现importing _arcgisscripting 找不到相关程序