向FTP服务器下载文件的简单实例

string filePath = "d:\\";
            string fileName = "lhking.txt"; //文件下载之后要保存的路径和文件名
            FtpWebRequest reqFTP;
            try
            {
                FileStream outputStream = new FileStream(filePath +"\\" + fileName, FileMode.Create);
                string filename = "ip.txt";
                string ftpServerIP = "222.76.217.24";
                reqFTP = (FtpWebRequest)FtpWebRequest.Create(new Uri("ftp://" +ftpServerIP + "/" + filename));
                reqFTP.Method = WebRequestMethods.Ftp.DownloadFile;
                reqFTP.UseBinary = true;
                reqFTP.Credentials = new NetworkCredential("l","l");

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);
                while (readCount > 0)
                {
                    outputStream.Write(buffer, 0, readCount);
                    readCount = ftpStream.Read(buffer, 0, bufferSize);
                }
                ftpStream.Close();
                outputStream.Close();
                response.Close();
            }
            catch (Exception err) 
            { 
                MessageBox.Show(err.Message,"Download Error");
            }
向FTP服务器上传文件的简单实例

string filename = "ip.txt";
            string ftpServerIP = "222.76.217.24";
            FileInfo fileInf = new FileInfo(filename);
            string uri = "ftp://" + ftpServerIP + "/" + fileInf.Name;
            FtpWebRequest reqFTP;
            reqFTP = (FtpWebRequest)FtpWebRequest.Create(new Uri("ftp://" + ftpServerIP + "/" + fileInf.Name));
            reqFTP.Credentials = new NetworkCredential("l","l");
            reqFTP.KeepAlive = false;
            reqFTP.Method = WebRequestMethods.Ftp.UploadFile;
            reqFTP.UseBinary = true;
            reqFTP.ContentLength = fileInf.Length;

int buffLength = 2048;
            byte[] buff = new byte[buffLength];
            int contentLen;
            FileStream fs = fileInf.OpenRead();
            try
            {
                Stream strm = reqFTP.GetRequestStream();
                contentLen = fs.Read(buff, 0, buffLength);
                while (contentLen != 0)
                {
                    strm.Write(buff, 0, contentLen);
                    contentLen = fs.Read(buff, 0, buffLength);
                }
                strm.Close();
                fs.Close();
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message, "Upload Error");
            }

本文基于署名 GPL 许可协议发布,欢迎转载,演绎或用于商业目的,但是必须保留本文的署名lhking(包含链接),具体操作方式可参考此处。如您有任何疑问或者授权方面的协商,请给我留言。

转载于:https://www.cnblogs.com/ljsjxr/p/9274827.html

C# 实现FTP上传与下载相关推荐

  1. windows下定时利用bat脚本实现ftp上传和下载

    前言: 工作中可能会遇到以下情况,利用windows作为中转,来实现两台linux服务器的文件传输. 实现步骤: 1.FTP上传和下载的bat脚本. 脚本分为两部分:可执行bat脚本和ftp命令文件: ...

  2. [ASP.NET]web实现用FTP上传、下载文件(附源码)

    文章配套源码下载地址:https://download.csdn.net/download/djk8888/10486581 index.aspx 页: <%@ Page Language=&q ...

  3. filezilla定时上传_windows下定时利用bat脚本实现ftp上传和下载

    前言: 工作中可能会遇到以下情况,利用windows作为中转,来实现两台linux服务器的文件传输. 实现步骤: 1.FTP上传和下载的bat脚本. 脚本分为两部分:可执行bat脚本和ftp命令文件: ...

  4. sex 无需下载_elipse FTP插件 - Sexftp 支持FTP上传、下载、比较等功能

    Sexftp简介 Sexftp是FTP上传与下载的eclipse插件,集成在ECLIPSE中,方便开发人员进行FTP相关操作,省去来回切换工具及选择目录的麻烦. Sexftp支持上传.下载等基本操作; ...

  5. C# FTP上传、下载、删除

    01 - FTP概述 文件传输协议(File Transfer Protocol,FTP)是用于在网络上进行文件传输的一套标准协议,作为一套古老的网络工具,在工业界有着及其广泛的应用.本节主要给大家演 ...

  6. winform实现FTP上传、下载、删除文件(附源码下载)

    一个用winform开发的FTP上传.下载.删除文件的简单列子: 配套源码下载:https://download.csdn.net/download/djk8888/10473477 注释尽可能详尽, ...

  7. ftp 传输速度_ftp上传工具下载,8款优秀的ftp上传工具下载软件

    FTP上传工具现在有很多种,而且各有各的特点,至于FTP上传工具哪个好用呢?小编认为萝卜白菜各有所爱,看个人喜好,还结合服务器和各种功能方面的需求.小编用的就是iis7服务器管理工具,比较方便而且功能 ...

  8. 3行代码实现ftp 上传、下载、删除操作集合

    为了帮助小伙伴们便捷操作ftp,现对常用的上传.下载.删除功能进行封装,小伙伴只需要传入需要的参数操作即可!告诉小伙伴好消息,本项目我已开源,大家可以根据需要克隆run起来!!! 文章目录 一.集合总 ...

  9. 【Python学习 】Python实现的FTP上传和下载功能

    一.背景 最近公司的一些自动化操作需要使用Python来实现FTP的上传和下载功能.因此参考网上的例子,撸了一段代码来实现了该功能,下面做个记录. 二.ftplib介绍 Python中默认安装的ftp ...

  10. c#实现ftp上传和下载

    代码如下: using System; using System.Collections.Generic; using System.Linq; using System.Text; using Sy ...

最新文章

  1. mysql> select file,domain,alias,valid from tbl_check where file=‘ecloud_0824-0830.csv‘ into outfile
  2. webstorm 不识别.config文件_webstorm好用的十款插件
  3. 关于Apache mod_rewrite的中文配置、使用和语法介绍(实现URL重写和防盗链功能)
  4. 代理类和被代理类的解释及案例
  5. 剑指Offer-求1+2+3+...+n
  6. python getattr_来一点Python面向对象第一级进阶的东西
  7. C语言实用算法系列之DOS传参“加减乘除计算器”
  8. current of 使用
  9. Python 新式类与经典类
  10. MongoDB中MapReduce介绍与使用
  11. 2021-2025年中国超声波管道监测系统行业市场供需与战略研究报告
  12. Python进阶【第九篇】装饰器
  13. 机器学习常用公式(二)
  14. PS打开前景色快捷键
  15. python使用给定字符密码_使用python生成一个指定长度的字符串(随机密码),要求包括数字、字母、特殊符号(string库解析)...
  16. Egret MovieClip2
  17. 第三方支付机构是什么
  18. replaceAll(xxxx, File.separator); 报错character to be escaped is missing-1
  19. 端点检测(VAD)技术
  20. 【Python入门教程】第85篇 常用字符串方法之大小写判断

热门文章

  1. mac os x安装php7.0和phalcon3.0
  2. linux-swappiness参数的作用及设置
  3. 关系型数据库之Mysql备份(五)
  4. java+jsp+mysql网页制作总结(1)
  5. 基于SSH的在线音乐点评网站-java在线音乐点评网站
  6. EasyUI –tree、combotree学习总结
  7. 记录git常用操作命令
  8. Linux多线程实践(一)线程基本概念和理论
  9. 防火墙/IDS测试工具Ftester
  10. 解决push的时候有时候会卡一下的问题