C#如何判断FTP服务器上的文件夹是否存在

zhuangwei_ 2008-08-19 02:43:32
使用 reqFTP.Method = WebRequestMethods.Ftp.MakeDirectory;
如果存在相同文件夹会报错是吗?怎样判断是否存在同名文件夹呢?
...全文
3959 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
zhuangwei_ 2008-08-22
  • 打赏
  • 举报
回复
哎,我用的try catch捕捉错误,出错了继续循环创建,就是感觉有点小慢,没办法了,笨方法,呵呵。
sxmonsy 2008-08-21
  • 打赏
  • 举报
回复
[Quote=引用 10 楼 slin60 的回复:]
ftp好像没有现成的判断文件夹是否存在的命令
我是用获取文件列表,然后遍历是否相同来实现的
[/Quote]
slin60 2008-08-20
  • 打赏
  • 举报
回复
ftp好像没有现成的判断文件夹是否存在的命令
我是用获取文件列表,然后遍历是否相同来实现的
十一路 2008-08-20
  • 打赏
  • 举报
回复
不知道楼主是要实现什么功能
如果最终目的是为了创建目录的话 (我的需求)

我的做法是,不管目录文件夹是否存在 ,循环创建,
如果存在就会出异常,捕获,但不抛, 不存在的话就会创建.

看看,有更好的方法发给我看看

代码:

......
{
......

string serverPathURL1 = "ftp://" + fileStoreServerIP + ":" + fileStoreServerPort + "/" + this.UpSectionCB.Text;
string serverPathURL2 = serverPathURL1 + "/" + this.UpFileGroupTB.Text.Trim();
string serverPathURL3 = serverPathURL2 + "/" + this.UpFileTypeCB.Text;

// 此例子中 this.UpSectionCB.Text, this.UpFileGroupTB.Text.Trim() ,
// this.UpFileTypeCB.Text 都表示 文件夹 名称
// fileStoreServerIP ,fileStoreServerPort 表示ftp服务器IP , 端口

UpMakeDirectory(serverPathURL1);
UpMakeDirectory(serverPathURL2);
UpMakeDirectory(serverPathURL3);

......
}

/// <summary>
/// 创建文件路径
/// </summary>
/// <param name="uploadUrl">创建的路径</param>
public void UpMakeDirectory(string uploadUrl)
{
FtpWebResponse uploadResponse = null;
try
{
FtpWebRequest uploadRequest =
(FtpWebRequest)WebRequest.Create(new Uri(uploadUrl));
uploadRequest.Method = WebRequestMethods.Ftp.MakeDirectory;
uploadRequest.Proxy = null;
uploadResponse =
(FtpWebResponse)uploadRequest.GetResponse();
}
catch
{
if (uploadResponse != null)
{
uploadResponse.Close();
}
}
if (uploadResponse != null)
{
uploadResponse.Close();
}
}



十一路 2008-08-19
  • 打赏
  • 举报
回复
我也正好在做这个
不过我没有判断是否文件存在
帮顶

我现在的问题是如何判断本机文件是否被占用

被占用上传出错
kenning 2008-08-19
  • 打赏
  • 举报
回复
先判断文件夹是否存在
Directory.Exists("///")
LQknife 2008-08-19
  • 打赏
  • 举报
回复
晓习
zhuangwei_ 2008-08-19
  • 打赏
  • 举报
回复
现在最关键的是怎么判断文件夹是否存在, 创建多层文件夹我可以用循环实现。求解。
zhuangwei_ 2008-08-19
  • 打赏
  • 举报
回复
上传没问题 就是在创建文件夹的时候 只能创建一层文件夹,而且文件夹如果存在则报错。暂时没法解决。
zhuangwei_ 2008-08-19
  • 打赏
  • 举报
回复
是不是只能创建一层目录?
亮声lz 2008-08-19
  • 打赏
  • 举报
回复
C#操作FTP的相关代码,搜一下,不是一大堆吗?
找不到相应的解决办法?
zhuangwei_ 2008-08-19
  • 打赏
  • 举报
回复
还有 如果是 /a/b/c 这样的路径,会报错,怎么解决呢?

110,535

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧