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

}

C# WebClient进行FTP服务上传文件和下载文件的更多相关文章

  1. C# FileStream进行FTP服务上传文件和下载文件

    定义FileStream类的操作类:操作类名: FtpUpDown 上传文件 /// <summary> /// 上传文件 /// </summary> /// <par ...

  2. winform下通过webclient使用非流方式上传(post)数据和文件

    这两天因为工作的需要,需要做一个winform上传数据到服务器端的程序.当时第一个想法是通过webservice的方式来实现,后来觉得麻 烦,想偷懒就没有用这样的方式,http的post方式变成了第一 ...

  3. HCNA管理设置文件系统FTP服务上传下载文件

    1.拓扑图 2.R2配置 The device is running! ###################################### <Huawei>sys Enter s ...

  4. ftp修改上传后目录、文件权限问题 aix

    问题:在AIX操作系统中,用root用户ftp文件到AIX上后,文件的默认权限是rw-r-----,Oracle用户无法读取.有没有办法指定上传文件的权限呢? 环境: AIX 6.1 解决方法: 1. ...

  5. Xshell 本地上传、远程下载文件

    1.Xshell登录工具在创建会话的时候,点击最下面的ZMODEM,可以填写下载的路径和加载的路径:2个路径可以一样也可以不一样: 在下载的时候可以下载到相应的路径去.(我设置的是下载前始终询问) 2 ...

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

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

  7. Selenium(十一):设置元素等待、上传文件、下载文件

    1. 设置元素等待 前面我们接触了几个元素等待方法,sleep.implicitly_wait方法,这一章我们就来整体学一下. 现在大多数Web应用程序使用的都是AJAX技术.当浏览器加载页面时,页面 ...

  8. Linux中ftp不能上传文件/目录的解决办法

    在linux中不能上传文件或文件夹最多的问题就是权限问题,但有时也不一定是权限问题了,像我就是空间不够用了,下面我来总结一些ftp不能上传文件/目录的解决办法   在排除用户组和权限等问题后,最可能引 ...

  9. 使用ftp软件上传下载php文件时换行丢失bug

    正 文:   在使用ftp软件上传下载php源文件时,我们偶尔会发现在本地windows下notepad++编辑器写好的php文件,在使用ftp上传到linux服务器后,php文件的换行符全部丢失了, ...

随机推荐

  1. mysql时间函数和时间操作

    补 原文链接:http://blog.csdn.net/yuxiayiji/article/details/7480785 select timediff('23:40:00', ' 18:30:00 ...

  2. STL 算法中函数对象和谓词

    STL 算法中函数对象和谓词 函数对象和谓词定义 函数对象: 重载函数调用操作符的类,其对象常称为函数对象(function object),即它们是行为类似函数的对象.一个类对象,表现出一个函数的特 ...

  3. .NET 复制对象会影响到复制源对象

    IList<string> list=new List<string>(); list.add("a"); list.add("b"); ...

  4. yii2 查询数据库语法

    $query0 = ImGroupUser::find()->where(['gid'=>'56680dfc60b215d62104a4d8'])->select('user_cli ...

  5. 【模板】ISAP最大流

    题目描述 如题,给出一个网络图,以及其源点和汇点,求出其网络最大流. 输入输出格式 输入格式: 第一行包含四个正整数N.M.S.T,分别表示点的个数.有向边的个数.源点序号.汇点序号. 接下来M行每行 ...

  6. apache.commons.io.FileUtils的常用操作

    至于相关jar包可以到官网获取 http://commons.apache.org/downloads/index.html package com.wz.apache.fileUtils; impo ...

  7. 关于nodejs的几个干货(读中文文件编码问题/发送邮件/定时任务)

    关于nodejs读取中文文件真是折腾了不少时间,网上各种方案,最后没有一个适用我,好在解决了. 下面的三个知识点都是从项目中抽出的,要单独运行脚本的话需要用全局模式来安装模块,比如安装中文转换模块(后 ...

  8. QT 设置菜单图标

    目录 一.添加主窗口菜单 二.添加菜单图标 三.添加资源文件 四.使用资源文件 五.使用代码来添加菜单和图标     正文 一.添加主窗口菜单 1.新建Qt Gui应用,项目名称为myMainWind ...

  9. Java入门:JDK与Eclipse之类的集成开发工具的关系

    JDK是Java Development Kit,也就是说Java开发所需的工具包.有了这个东西,一切Java开发理论上都不是问题了.当然,根据你下载的版本不同,可能擅长的领域不同.通常大家都是用JD ...

  10. 「Vue」实用组件

    一.时间格式 1.安装Moment模块 npm i moment -S2.main.js中设置全局过滤器 import moment from 'moment' Vue.filter('ctime', ...