用ftpsupport建立所有ftp服务器上不存在的目录

添加人:admin四级(1707分)   添加时间:2007-07-05    阅读次数:1064  收藏此教程
最近项目中用ftpsupport.dll进行ftp上传,当用户上传文件时如果目录不存在则建立该目录,但是
现在的问题是用户传来的目录有几层都是不存在的,这样就需要循环建立所有不存在的目录,
比如需要上传文件到目录/vagerent/temp/a1/a2,但是/temp/a1/a2三个目录都没有建立。
方法如下:
/// <summary>
/// 检测ftp上是否有该目录,如果没有则建立
/// </summary>
/// <param name="ip"></param>
/// <param name="name"></param>
/// <param name="psw"></param>
/// <param name="dr">形如/ftproot/dir2/dir2_2/dirlast</param>
/// <returns></returns>
private void FtpMakeAllDir(string ip,string name,string psw,string dr)
{
    FtpConnection ftp = new FtpConnection();
    ftp.Connect(ip,name,psw);

    string [] dir = dr.Split('/');
    string curDir = "/";
    for (int i = 0;i<dir.Length;i++)
    {
        curDir += "/"+dir[i];
        if (!ftp.DirectoryExist(curDir))
        {
            try
            {
                ftp.CreateDirectory(curDir);
            }
            catch{}
        }
    }
    ftp.Close();
}

上篇文章:用ftpsupport进行ftp上传
1页 第1上一页1下一页
相关的教程: FTP FTPSupport
收藏此教程

当前平均分: 0.0(0 次打分)

-5-4-3-2-1012345
评论主题
您的大名
您的评论
验证码 点击换一个验证码
知识库搜索: