关于C#的FTPRequest客户类如何使用通配符去服务器端匹配文件
2010-01-14 21:42
549 查看
private static FtpWebRequest GetRequest( string URI, string username, string password ) { FtpWebRequest result = ( FtpWebRequest )FtpWebRequest.Create( URI ); result.Credentials = new System.Net.NetworkCredential( username, password ); result.KeepAlive = false; return result; } /// <summary> /// 搜索远程文件 /// </summary> /// <param name="targetDir"></param> /// <param name="hostname"></param> /// <param name="username"></param> /// <param name="password"></param> /// <param name="SearchPattern"></param> /// <returns></returns> public static List<string> ListDirectory( string targetDir, string hostname, string username, string password, string SearchPattern ) { List<string> result = new List<string>(); try { string URI = "FTP://" + hostname + "/" + targetDir + "/R_*Apply_*_*.xml"; System.Net.FtpWebRequest ftp = GetRequest( URI, username, password ); ftp.Method = System.Net.WebRequestMethods.Ftp.ListDirectory; ftp.UsePassive = true; ftp.UseBinary = true; string str = GetStringResponse( ftp ); str = str.Replace( "/r/n", "/r" ).TrimEnd( '/r' ); str = str.Replace( "/n", "/r" ); if ( str != string.Empty ) result.AddRange( str.Split( '/r' ) ); //if (result.Count!=0) //CommonLogger.Info(OMSInterfaceType.FTP, string.Format("浏览远程目录找到文件{0}个", result.Count.ToString())); return result; } catch ( Exception ex ) { Console.WriteLine( ex.Message ); return null; } } private static string GetStringResponse( FtpWebRequest ftp ) { //Get the result, streaming to a string string result = ""; using ( FtpWebResponse response = ( FtpWebResponse )ftp.GetResponse() ) { long size = response.ContentLength; using ( Stream datastream = response.GetResponseStream() ) { using ( StreamReader sr = new StreamReader( datastream, System.Text.Encoding.Default ) ) { result = sr.ReadToEnd(); sr.Close(); } datastream.Close(); } response.Close(); } return result; } 说明,其它就是就是在List目录的时候,后面直接带上匹配表达式即可以实现
相关文章推荐
- Visual Studio 2017中使用正则修改部分内容 如何使用ILAsm与ILDasm修改.Net exe(dll)文件 C#学习-图解教程(1):格式化数字字符串 小程序开发之图片转Base64(C#、.Net) jquery遍历table为每一个单元格取值及赋值 。net加密解密相关方法 .net关于坐标之间一些简单操作
- CSDN上一篇关于如何有效的使用C#读取文件的文章 很不错的技术文章
- c# 使用FtpWebRequest,FtpWebResponse ,Stream 实现获取文件列表及下载
- 如何使用FtpWebRequest对ftp服务器上面的目录进行改名(注意是目录不是文件!)
- 如何有效的使用C#读取文件
- [C#]在WinForm下使用HttpWebRequest上传文件并显示进度
- 如何有效的使用C#读取文件
- C#在WinForm下使用HttpWebRequest上传文件并显示进度
- 如何在C#中使用内嵌资源文件(转载学习)
- c# 如何使用DLL的config文件中的信息
- 关于如何使用VS高亮显示无扩展名源码文件的一个小技巧
- [C#]在WinForm下使用HttpWebRequest上传文件并显示进度
- 如何在命令行中使用 ftp 命令上传和下载文件
- C# 使用HttpWebRequest通过PHP接口 上传文件
- asp.net(c#)使用HttpWebRequest附加携带请求参数以post方式模拟上传大文件(以图片为例)到Web服务器端
- 使用.net FtpWebRequest 实现FTP常用功能 上传 下载 获取文件列表 移动 切换目录 改名 .
- 关于使用FTP上传文件到服务器的小总结-java
- 如何用FtpWebRequest 传送巨大文件
- 关于使用c#调用python脚本文件,脚本文件需要传递参数
- 使用ftp上传文件和下载文件---C#