定义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");

}

webclient上传下载文件的更多相关文章

  1. WebClient上传下载文件,小白篇

    WebClient的上传文件一直报错,各种百度各种稀奇古怪的东西,终于百度到一篇小白学习篇 转自: https://www.cnblogs.com/cncc/p/5722231.html 使用C#We ...

  2. C#实现http协议支持上传下载文件的GET、POST请求

    C#实现http协议支持上传下载文件的GET.POST请求using System; using System.Collections.Generic; using System.Text; usin ...

  3. rz和sz上传下载文件工具lrzsz

    ######################### rz和sz上传下载文件工具lrzsz ####################################################### ...

  4. WebClient上传音频文件

    //WebClient上传音频文件 public string UploadVoice(string fileNamePath) { Voice model=new Voice(); string s ...

  5. linux上很方便的上传下载文件工具rz和sz

    linux上很方便的上传下载文件工具rz和sz(本文适合linux入门的朋友) ##########################################################&l ...

  6. shell通过ftp实现上传/下载文件

    直接代码,shell文件名为testFtptool.sh: #!/bin/bash ########################################################## ...

  7. SFTP远程连接服务器上传下载文件-qt4.8.0-vs2010编译器-项目实例

    本项目仅测试远程连接服务器,支持上传,下载文件,更多功能开发请看API自行开发. 环境:win7系统,Qt4.8.0版本,vs2010编译器 qt4.8.0-vs2010编译器项目实例下载地址:CSD ...

  8. linux下常用FTP命令 上传下载文件【转】

    1. 连接ftp服务器 格式:ftp [hostname| ip-address]a)在linux命令行下输入: ftp 192.168.1.1 b)服务器询问你用户名和密码,分别输入用户名和相应密码 ...

  9. HttpClient上传下载文件

    HttpClient上传下载文件 java HttpClient Maven依赖 <dependency> <groupId>org.apache.httpcomponents ...

随机推荐

  1. Feeding Time 【bfs求最大连通块】

    题目链接:https://ac.nowcoder.com/acm/contest/1870/J 题目大意:求最大的连通块是多大 主要是为了防止自己忘记bfs怎么写..... #include<s ...

  2. 【Docker】:使用docker安装mysql,挂载外部配置和数据

    普通安装 1.下载镜像,mysql 5.7 docker pull mysql:5.7 2.创建mysql容器,并后台启动 docker run -d -p 3306:3306 -e MYSQL_US ...

  3. python中内存地址

    遇到一个朋友,给我提了一个问题:python中的两个相同的值,内存地址是否一样? 当时印象里有这样一句话:Python采用基于值的内存管理模式,相同的值在内存中只有一份 于是张嘴就说是一样的 朋友说不 ...

  4. css — 权重、继承性、排版、float

    目录 1. 继承性 2. css中的权重 3. 常用格式化排版 4. 浮动布局float 1. 继承性 继承性:在css有某些属性是可以继承下来,如 color,text-xxx,line-heigh ...

  5. pandas 索引笔记

    import pandas as pd import numpy as np s = pd.Series(np.random.rand(5), index=list('abcde')) # 创建序列, ...

  6. JS 04 Date_Math_String_Object

    Date <script> //1.Date对象 var d1 = new Date(); //Thu May 02 2019 14:27:19 GMT+0800 (中国标准时间) con ...

  7. asp.net core-15.Individual authentication 模板

    在visual studio code执行dotnet new mvc --help 可以查看执行命令 visual studio code先创建一个mvc的项目 dotnet new mvc -au ...

  8. Ubuntu Server 18.04 无法修改 hostname

    对于运维而言,我们希望每台服务器的 hostname 都能体现出它自己的功能/ip,方便排查. ubuntu server live 18.04 的安装流程非常友好,从 ip 到 hostname 都 ...

  9. Nginx学习笔记(一):Nginx 进程模型 / 事件处理模型

    Nginx 进程模型 ​​​​ 多进程模型 进程间相互独立,无需加锁,且互不影响: 一个进程退出了不影响其他的进程运行,降低风险: 当请求到来,多个 worker 通过竞争 accrpt_mutex ...

  10. 涛哥:Qt安卓-5.12环境搭建

    简介 Qt for android 环境搭建,以Windows平台 Qt5.12为基准. 因为有不少人问相关问题,所以写篇文章汇总一下. 安装Qt 需要先安装Android版的Qt. 一般在Qt的安装 ...