今天获取小众ftp服务器指定目录内容列表时费劲急了。
  1. ///parama url="ftp://x.x.x.x/dir_name"
  2. public string GetFTPDir(string url)
  3. {
  4. FtpWebRequest reqFtp;
  5. try
  6. {
  7. reqFtp = (FtpWebRequest)FtpWebRequest.Create(new Uri(url));
  8. reqFtp.KeepAlive = false;
  9. //reqFtp.UseBinary = true;   //指定ftp数据传输类型为 二进制
  10. //reqFtp.Credentials = new NetworkCredential(USERID, PassWord);     //设置于ftp通讯的凭据
  11. reqFtp.Method = WebRequestMethods.Ftp.ListDirectoryDetails;      //指定操作方式
  12. WebResponse response;
  13. response = reqFtp.GetResponse();  //获取一个FTP响应
  14. StreamReader sr = new StreamReader(response.GetResponseStream(), Encoding.UTF8);   //读取响应流
  15. string contentHTML = sr.ReadToEnd();    //读取网页的源代码
  16. sr.Close();
  17. return contentHTML;
  18. }
  19. catch (Exception ex)
  20. {
  21. return ex.Message;
  22. }
  23. }

当访问iis的ftp服务器时没有错误,访问一个小型ftp时报错227,查阅资料后修改第9行为reqFtp.UsePassive = false;

执行后有了返回,但是为根目录的列表。

.Net的FtpWebRequest没有改变当前目录操作,而是只能创建时指定文件或目录。百般无奈时,想到url应该是一个文件,目录在自己的下面显示一个“.”表示自己。所以修改url参数为url="ftp://x.x.x.x/dir_name/."。再次执行代码果然通过,不论iis ftp还是小型ftp服务器均通过。

获取小众ftp服务器指定目录内容列表的更多相关文章

  1. socket实现两台FTP服务器指定目录下的文件转移(不依赖第三方jar包)

    通过socket实现两台FTP服务器指定目录下的文件转移,其中包含了基础了ftp文件列表显示.上传和下载.这里仅供学习用,需掌握的点有socket.ftp命令.文件流读取转换等 完整代码如下: Ftp ...

  2. python 实现统计ftp服务器指定目录下文件夹数目、文件数目及所有文件大小

    本次主要为满足应用方核对上传到ftp服务器的文件是否缺漏. 主要要求:指定目录下,文件夹数目/文件数目/所有文件大小,类似Windows如下功能: 模块介绍: from ftplib import F ...

  3. python3获取指定目录内容的详细信息

    不同平台获取指定目录内容的详细信息命令各不相同: Linux中可以通过ls -al获取获取 windows中可以通过dir命令获取 下面是我写的一个通用获取目录内容详细信息的python3脚本: #! ...

  4. 9.JAVA之GUI编程列出指定目录内容

    代码如下: /*列出指定目录内容*/ import java.awt.Button; import java.awt.FlowLayout; import java.awt.Frame; import ...

  5. php实现远程网络文件下载到服务器指定目录(方法一)

    PHP实现远程网络文件下载到服务器指定目录(方法一) <?php function getFile($url, $save_dir = '', $filename = '', $type = 0 ...

  6. 易优CMS:channelartlist 获取当前频道的下级栏目的内容列表

    channelartlist 获取当前频道的下级栏目的内容列表   [基础用法] 名称:channelartlist 功能:获取当前频道的下级栏目的内容列表标签 语法: {eyou:channelar ...

  7. Linux 下搭建ftp服务器 指定用户指定目录及其他操作

    搭建 Linux下 rpm -qa |grep vsftpd查看是否安装 没安装yum安装 /etc/vsftpd/目录下有vsftpd.conf配置文件 根据需求 进行配置  是否使用匿名用户以及文 ...

  8. centos FTP 用户指定目录禁用上级目录

    在默认配置下,本地用户登入FTP后可以使用cd命令切换到其他目录,这样会对系统带来安全隐患.可以通过以下三条配置文件来控制用户切换目录.chroot_list_enable=YES/NO(NO)设置是 ...

  9. 使用Python批量下载ftp服务器中的内容

    使用ftplib,轻松实现从ftp服务器上下载所需要的文件,包括目录结构等,支持了一下断点续传 from ftplib import FTP import sys import os import r ...

随机推荐

  1. 如何让iOS 保持界面流畅?这些技巧你知道吗

    如何让iOS 保持界面流畅?这些技巧你知道吗   作者:ibireme这篇文章会非常详细的分析 iOS 界面构建中的各种性能问题以及对应的解决思路,同时给出一个开源的微博列表实现,通过实际的代码展示如 ...

  2. List转MVC DropDownListFor(SelectList)

    /// <summary> /// List转SelectListItem /// </summary> /// <typeparam name="T" ...

  3. Android 学习第16课,java 包、类等相关的一些基础知识

    1.建议将类放在包中,不要使用无名包 2.建议包名都用小写单词组成,不要用大写 3.建议包名用“域名的倒写.项目名.模块名”的形式,以确保包名的唯一性 注意:类变量与实例变量.类方法与实例方法的区别 ...

  4. Xamarin Android.Views.WindowManagerBadTokenException: Unable to add window -- token android.os.BinderProxy

    Android.Views.WindowManagerBadTokenException: Unable to add window -- token android.os.BinderProxy@ ...

  5. devexpress xaf 开发中遇到的问题.

    devexpress xaf 开发中遇到的问题很多久了就忘记了.每天都把开发内容记录下来,方便大家,方便自己

  6. LintCode Subarray Sum

    For this problem we need to learn a new trick that if your start sum up all elements in an array. Wh ...

  7. c# chart

    1.随便一个例子 string sql = "select distinct count(*) as c,datepart(day,ull_loginTime) as a from user ...

  8. Myeclipse非正常关闭出现问题

    Could not create the view: An unexpected exception was thrown. 解决办法: 关闭myeclipse 原来工作空间的.metadata文件夹 ...

  9. UVa 12118 检查员的难题(dfs+欧拉回路)

    https://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=show_problem& ...

  10. SVN-Server搭建及配置

    SVN是Subversion的简称,是一个开放源代码的版本控制系统,相较于RCS.CVS,它采用了分支管理系统,它的设计目标就是取代CVS.互联网上很多版本控制服务已从CVS迁移到Subversion ...