根据字符串创建FTP本地目录 并按照日期建立子目录返回路径
/** * 根据字符串创建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; }