您的位置:首页 > 编程语言 > PHP开发

根据字符串创建FTP本地目录 并按照日期建立子目录返回路径

2013-10-29 09:45 369 查看
/**
* 根据字符串创建FTP本地目录 并按照日期建立子目录返回
* @param path
* @return
*/
private String getFolder(String path) {
SimpleDateFormat formater = new SimpleDateFormat("yyyyMMdd");
String ftpDateFilePath=formater.format(new Date());
String temppath = path;
path += "/" + ftpDateFilePath;

//KmConfig 获得ftp信息
KmConfig kmConfig = new KmConfig();
String ftpHost = kmConfig.getFtpHost();
int port = kmConfig.getFtpPort();
String userName = kmConfig.getFtpUser();
String passWord = kmConfig.getFtpPassword();
String catelog = kmConfig.getFtpPath();
String ftppath="ftp://"+userName+":"+passWord+"@"+ftpHost+":"+String.valueOf(port)+"/"+catelog+"/";
System.out.println(ftppath+path+"/");

FtpClient ftpClient;
try {
ftpClient = new FtpClient(ftpHost, port);
//开启服务
ftpClient.login(userName, passWord);// userName、passWord分别为FTP服务器的登陆用户名和密码

ftpClient.cd(catelog);

//通过远程命令 创建一个文件夹
if(false==isDirExist(temppath,ftpClient)){
ftpClient.sendServer("MKD "+ temppath + " \r\n");
//这个方法必须在 这两个方法中间调用 否则 命令不管用
ftpClient.binary();
ftpClient.readServerResponse();
ftpClient.cd(temppath);
}
ftpClient.closeServer();

FtpClient ftpClient2 = new FtpClient(ftpHost, port);
//开启服务
ftpClient2.login(userName, passWord);// userName、passWord分别为FTP服务器的登陆用户名和密码

ftpClient2.cd(catelog+"/"+temppath);
//创建时间目录
if(false==isDirExist(ftpDateFilePath,ftpClient2)){
ftpClient2.sendServer("MKD "+ftpDateFilePath + " \r\n");
//这个方法必须在 这两个方法中间调用 否则 命令不管用
ftpClient2.binary();
ftpClient2.readServerResponse();

}
ftpClient2.closeServer();
} catch (Exception e1) {
e1.printStackTrace();
}// ftpHost为FTP服务器的IP地址,port为FTP服务器的登陆端口,ftpHost为String型,port为int型。

return ftppath+path;
}
/**
* 检查文件夹是否存在
* @param dir
* @param ftpClient
* @return
*/
private Boolean isDirExist(String dir, FtpClient ftpClient) {
try {
ftpClient.cd(dir);
} catch (Exception e) {
e.printStackTrace();
return false;
}
return true;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐