java實現(xiàn)ftp上傳 如何創(chuàng)建文件夾
java如何實現(xiàn)ftp上傳?如何創(chuàng)建文件夾?
最佳答案:
準備條件:java實現(xiàn)ftp上傳用到了commons-net-3.3.jar包
首先建立ftphost連接
public boolean connect(String path, String addr, int port, String username, String password) {
try {
//FTPClient ftp = new FTPHTTPClient(addr, port, username, password);
ftp = new FTPClient();
int reply;
ftp.connect(addr);
System.out.println("連接到:" + addr + ":" + port);
System.out.print(ftp.getReplyString());
reply = ftp.getReplyCode();
if (!FTPReply.isPositiveCompletion(reply)) {
ftp.disconnect();
System.err.println("FTP目標服務(wù)器積極拒絕.");
System.exit(1);
return false;
}else{
ftp.login(username, password);
ftp.enterLocalPassiveMode();
ftp.setFileType(FTPClient.BINARY_FILE_TYPE);
ftp.changeWorkingDirectory(path);
System.out.println("已連接:" + addr + ":" + port);
return true;
}
} catch (Exception ex) {
ex.printStackTrace();
System.out.println(ex.getMessage());
return false;
}
}
然后再利用ftpclient的makeDirectory方法創(chuàng)建文件夾
public void createDir(String dirname){
try{
ftp.makeDirectory(dirname);
System.out.println("在目標服務(wù)器上成功建立了文件夾: " + dirname);
}catch(Exception ex){
System.out.println(ex.getMessage());
}
}
斷開host連接
public void disconnect(){
try {
ftp.disconnect();
} catch (IOException e) {
e.printStackTrace();
}
}
最后是程序的調(diào)用方法
public static void main(String[] args) {
FtpUploadTest ftpupload = new FtpUploadTest();
if(ftpupload.connect("", "172.39.8.x", 20, "administrator", "abc@123")){
ftpupload.createDir("/UPLOAD");
ftpupload.disconnect();
}
}
其他回答:
首先保證ftp服務(wù)器的創(chuàng)建文件夾權(quán)限已開放,關(guān)鍵代碼如下。
/**
* 在當前目錄下創(chuàng)建文件夾
*
* @param dir
* @return
* @throws Exception
*/
private boolean createDir(String dir) {
try {
ftpClient.ascii();
StringTokenizer s = new StringTokenizer(dir, "/"); // sign
s.countTokens();
String pathName = ftpClient.pwd();
while (s.hasMoreElements()) {
pathName = pathName + "/" + (String) s.nextElement();
try {
ftpClient.sendServer("MKD " + pathName + "\r\n");
} catch (Exception e) {
e = null;
return false;
}
ftpClient.readServerResponse();
}
ftpClient.binary();
return true;
} catch (IOException e1) {
e1.printStackTrace();
return false;
}
}
其他回答2:
用ftp命令:mkdir()
可以創(chuàng)建文件夾。
以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
淺析IDEA如何正確配置Gradle? GRADLE_USER_HOME 和 Gradle user home的區(qū)別
這篇文章主要介紹了IDEA如何正確配置Gradle? GRADLE_USER_HOME 和 Gradle user home的區(qū)別,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2020-08-08
SpringBoot實現(xiàn)微信及QQ綁定登錄的示例代碼
本文主要介紹了SpringBoot實現(xiàn)微信及QQ綁定登錄的示例代碼,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2023-07-07
在Java生產(chǎn)環(huán)境下進行性能監(jiān)控與調(diào)優(yōu)的詳細過程
在Java生產(chǎn)環(huán)境下進行性能監(jiān)控與調(diào)優(yōu)是一個復(fù)雜但重要的過程,它涉及到多個方面,包括代碼分析、JVM監(jiān)控、線程管理、垃圾收集優(yōu)化、內(nèi)存管理、數(shù)據(jù)庫交互等,下面我將提供一個詳細的概述和示例代碼,需要的朋友可以參考下2025-02-02

