C# WebClient进行FTP服务上传文件和下载文件

定义WebClient使用的操作类: 操作类名称WebUpDown

WebClient上传文件至Ftp服务:

//// <summary> 

        /// WebClient上传文件至Ftp服务

        /// </summary> 

        /// <param name="fileNamePath">文件名,全路径格式</param> 

        /// <param name="uriString">服务器文件夹路径</param> 

        public static void UpLoadFile(string fileNamePath, string uriString)

        {

            string NewFileName = DateTime.Now.ToString("yyMMddhhmmss") + DateTime.Now.Millisecond.ToString() + fileNamePath.Substring(fileNamePath.LastIndexOf("."));

            uriString = uriString + NewFileName;

 

            //创建WebClient实例 

            WebClient myWebClient = new WebClient();

 

            //指定用户名和密码

            myWebClient.Credentials = new NetworkCredential("username", "password");

 

            try

            {

                //上传文件

                myWebClient.UploadFile(new Uri(uriString), fileNamePath);

            }

            catch (Exception ex)

            {

                MessageBox.Show("文件上传失败,失败原因:" + ex.Message);

            }

            finally

            {

                myWebClient.Dispose();

            }

        } 

 

 

 

下载服务器文件至客户端:

        /// <summary> 

        /// 下载服务器文件至客户端 

        /// </summary> 

        /// <param name="URL">被下载的文件地址,绝对路径</param> 

        /// <param name="Dir">另存放的目录</param> 

        public static void Download(string URL, string Dir)

        {

            WebClient client = new WebClient();

            client.Credentials = new NetworkCredential("username "," password ");

            string Path = Dir;   //另存为的绝对路径+文件名 

 

            try

            {

                client.DownloadFile(new Uri(URL), Path);

            }

            catch (Exception ex)

            {

                MessageBox.Show("文件下载失败,失败原因:" + ex.Message);

            }

            finally

            {

                client.Dispose();

            }

        }

 

 

调用方法:

/// <summary>

        /// WebClient上传到Ftp服务

        /// </summary>

        /// <param name="sender"></param>

        /// <param name="e"></param>

        private void Button_Click_5(object sender, RoutedEventArgs e)

        {

            WebUpDown.UpLoadFile(@"C:\123.txt",@"ftp://localhost//");

        }

 

        /// <summary>

        /// WebClient使用Ftp服务下载到客户端

        /// </summary>

        /// <param name="sender"></param>

        /// <param name="e"></param>

        private void Button_Click_6(object sender, RoutedEventArgs e)

        {

            WebUpDown.Download(@"ftp://localhost//123.txt", @"C:\123.txt");

        }

posted @ 2017-12-20 18:16  黑暗时代地表人  阅读(4789)  评论(0编辑  收藏  举报