string ftpRootURL="ftp://公网ip:2222";
string ftpUser="test";
string ftpPwd="test"; public string[] GetFileList(string mask)
{
string[] downloadFiles;
StringBuilder result = new StringBuilder();
FtpWebRequest reqFTP;
try
{
reqFTP = (FtpWebRequest)FtpWebRequest.Create(new Uri(ftpRootURL));
reqFTP.UseBinary = true;
//reqFTP.UsePassive = false;
reqFTP.Credentials = new NetworkCredential(ftpUser, ftpPassword);
reqFTP.Method = WebRequestMethods.Ftp.ListDirectory;
WebResponse response = reqFTP.GetResponse();
StreamReader reader = new StreamReader(response.GetResponseStream()); string line = reader.ReadLine();
while (line != null)
{
if (mask.Trim() != string.Empty && mask.Trim() != "*.*")
{
string mask_ = mask.Substring(0, mask.IndexOf("*"));
if (line.Substring(0, mask_.Length) == mask_)
{
result.Append(line);
result.Append("\n");
}
}
else
{
result.Append(line);
result.Append("\n");
}
line = reader.ReadLine();
}
result.Remove(result.ToString().LastIndexOf('\n'), 1);
reader.Close();
response.Close();
return result.ToString().Split('\n');
}
catch (Exception ex)
{
MessageBox.Show(ex.Message.Trim());
downloadFiles = null;
return downloadFiles;
}
}
我的FTP服务器是架在内网上的,路由映射了端口过去。
无论我的模式是主动还是被动,只要不是21端口大概都返回:
“应 PASV 命令的请求,服务器返回了一个与 FTP 连接地址不同的地址。”
请大虾赐教!
解决方案 »
- 编码转换: 荷兰甲级联赛
- ArrayList[]=new ArrayList[]?
- 求救,以下是我做的一个灰度直方图的代码。麻烦帮我看看到底是哪里出现问题了
- 如何利用C#在XML中添加节点
- 请问我的电脑可以安装ORACLE吗?
- 100--dataGrid(网格)列中包含checkBox, 以及如何实现分页功能 windows窗体中
- .NET 2.0 中 析构函数关闭数据库连接出错,请教各位
- 关于System.InvalidOperationException: ExecuteScalar: Connection 属性尚未初始化
- catch (System.Exception err)与catch(System.InvalidCastException e)什么区别
- Socket UDP 遇到个问题
- 关于控件的问题
- C# 关于查询统计的循环问题
本内容使用CSDN小秘书回复
每天回帖即可得10分可用分!
*************************************************[/align]