java判断ftp创建目录是否成功_FTP判断ftp上是否有文件目录,没有就创建的具体案例...

///

/// 判断ftp上是否有指定的文件目录,没有创建

///

/// 指定路径

public void FtpDirectoryAndFile(string ftpPath)

{

int start = "ftp://192.168.1.198:21/".Length;

int end = ftpPath.LastIndexOf("/") - start;

string fullDir = ftpPath.Substring(start, end);

string[] dirs = fullDir.Split('/');

if (dirs != null && dirs.Length > 0)

{

string curDir = "ftp://192.168.1.198:21/";

for (int i = 0; i < dirs.Length; i++)

{

string dir = dirs[i];

if (dir != null && dir.Length > 0)

{

bool isContained = FtpDirIsExists(curDir, dir);

if (isContained)

{

curDir += dir + "/";

continue;

}

else

{

FtpMakeDir(curDir + dir);

curDir += dir + "/";

}

}

}

}

}

///

/// 判断ftp上的文件目录是否存在

///

/// 要判断的ftp上的文件目录路径

/// ftp上的文件目录路径中是否包含该文件夹名称

/// true 包含,false 不包含

public static bool FtpDirIsExists(string dirName, string folderName)

{

//string url = "ftp://" + FtpServerIP + "/" + dirName;

FtpWebRequest ftpWebRequest = (FtpWebRequest)WebRequest.Create(new Uri(dirName));

ftpWebRequest.UseBinary = true;

ftpWebRequest.Credentials = new NetworkCredential("www", "wwwjs");

ftpWebRequest.Method = WebRequestMethods.Ftp.ListDirectory;

StreamReader streamReader = null;

Stream responseStream = null;

bool isContained = false;

try

{

using (FtpWebResponse ftpWebResponse = (FtpWebResponse)ftpWebRequest.GetResponse())

{

responseStream = ftpWebResponse.GetResponseStream();

streamReader = new StreamReader(responseStream);

string nameList = streamReader.ReadToEnd();

streamReader.Close();

responseStream.Close();

string[] nameArr = nameList.Replace("\r\n", "#").Split(new string[] { "#"}, StringSplitOptions.RemoveEmptyEntries);

for (int i = 0; i < nameArr.Length; i++)

{

if (nameArr[i].Equals(folderName))

{

isContained= true;

break;

}

}

return isContained;

}

}

catch (Exception ex)

{

if (streamReader != null)

{

streamReader.Close();

}

if (responseStream != null)

{

responseStream.Close();

}

return false;

}

}

///

/// 在FTP上创建目录

///

/// 要创建的目录名

public bool FtpMakeDir(string dirName)

{

FtpWebResponse response = null;

StreamReader reader = null;

try

{

//string uri = FtpServerIP + DateTime.Now.ToString("yyyyMMddHHmmss") + fileInfo.Name;

FtpWebRequest reqFTP = (FtpWebRequest)WebRequest.Create(new Uri(dirName));

reqFTP.Credentials = new NetworkCredential("www", "wwwjs");

//reqFTP.KeepAlive = false;

reqFTP.Method = WebRequestMethods.Ftp.MakeDirectory;

reqFTP.UseBinary = true;

response = (FtpWebResponse)reqFTP.GetResponse();

reader = new StreamReader(response.GetResponseStream());

string returnValue = reader.ReadToEnd();

response.Close();

reader.Close();

return true;

}

catch (Exception ex)

{

if (response != null)

{

response.Close();

}

if (reader != null)

{

reader.Close();

}

return false;

}

}

测试代码如下

string ss = "ftp://192.168.1.198:21/2018/11/222.pdf";

FtpDirectoryAndFile(ss);

string sss = "333";

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值