博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
C# WinForm 文件上传下载
阅读量:4598 次
发布时间:2019-06-09

本文共 2163 字,大约阅读时间需要 7 分钟。

///   /// WebClient上传文件至服务器  ///   /// 文件名,全路径格式  /// 服务器文件夹路径  private void UpLoadFile(string fileNamePath,string uriString)  {   string fileName = fileNamePath.Substring(fileNamePath.LastIndexOf("\\") + 1);   NewFileName = DateTime.Now.ToString("yyMMddhhmmss") + DateTime.Now.Millisecond.ToString() + fileNamePath.Substring(fileNamePath.LastIndexOf("."));    string fileNameExt = fileName.Substring(fileName.LastIndexOf(".") + 1);   if(uriString.EndsWith("/") == false) uriString = uriString + "/";   uriString = uriString + NewFileName;   /// 创建WebClient实例   WebClient myWebClient = new WebClient();   myWebClient.Credentials = CredentialCache.DefaultCredentials;   // 要上传的文件   FileStream fs = new FileStream(fileName, FileMode.Open, FileAccess.Read);   //FileStream fs = OpenFile();   BinaryReader r = new BinaryReader(fs);   try   {    //使用UploadFile方法可以用下面的格式    //myWebClient.UploadFile(uriString,"PUT",fileNamePath);    byte[] postArray = r.ReadBytes((int)fs.Length);    Stream postStream = myWebClient.OpenWrite(uriString,"PUT");    if(postStream.CanWrite)    {     postStream.Write(postArray,0,postArray.Length);    }    else    {     AppHelper.MessageService.ShowError("文件目前不可写!");    }    postStream.Close();   }   catch   {    AppHelper.MessageService.ShowError("文件上传失败,请稍候重试~");   }  }  ///   /// 下载服务器文件至客户端  ///   /// 被下载的文件地址,绝对路径  /// 另存放的目录  public void Download(string URL,string Dir)  {   WebClient client = new WebClient();   string fileName = URL.Substring(URL.LastIndexOf("\\") + 1);  //被下载的文件名   string Path = Dir+fileName;   //另存为的绝对路径+文件名      try   {    WebRequest myre=WebRequest.Create(URL);    }   catch   {    //MessageBox.Show(exp.Message,"Error");    }      try   {    client.DownloadFile(URL,fileName);    FileStream fs = new FileStream(fileName, FileMode.Open, FileAccess.Read);    BinaryReader r = new BinaryReader(fs);    byte[] mbyte = r.ReadBytes((int)fs.Length);    FileStream fstr = new FileStream(Path,FileMode.OpenOrCreate,FileAccess.Write);     fstr.Write(mbyte,0,(int)fs.Length);    fstr.Close();    }    catch   {    //MessageBox.Show(exp.Message,"Error");   }   }

 

转载于:https://www.cnblogs.com/jameslif/p/3937088.html

你可能感兴趣的文章
内存泄漏 tensorflow
查看>>
javascript 体验倒计时:距离国庆还有多长时间
查看>>
centos 7 修改ssh登录端口
查看>>
wraps
查看>>
11、深入理解计算机系统笔记:存储器层次结构,利用局部性
查看>>
小白整理一下PHP常用字符串函数
查看>>
一千行mysql笔记
查看>>
排查Java高CPU占用原因
查看>>
[iOS]数据库第三方框架FMDB详细讲解
查看>>
让IE6/IE7/IE8浏览器支持CSS3属性
查看>>
Windows 某些软件显示"口口"解决办法
查看>>
PHP+Hadoop+Hive+Thrift+Mysql实现数据统计分析
查看>>
和同事下班路上讨论心得(服务器部署的几点问题)
查看>>
Spring学习总结五——SpringIOC容器五
查看>>
解决多个ajax页面请求,页面loading阻塞问题
查看>>
Executor
查看>>
Javascript 表单验证对象控件 + ajax简单验证重复项与ajax提交数据
查看>>
使用抽象工厂设计一个简单的交易模块
查看>>
如何将广告始终定位到网页右下角
查看>>
常用js整理
查看>>