通過FTPClient向ftp服務器上傳文件

FTPClient 要實現上傳和下載,需要jakarta-oro-2.0.8.jar,commons-net-1.4.1.jar這兩個jar包。

public boolean uploadFile(String filename,InputStream input){
		 boolean success = false;
		FTPClient client = new FTPClient();
		try {
			client.connect("ip地址", 端口號);
			client.login("用戶名", "密碼");
			int reply = client.getReplyCode();
			if(!FTPReply.isPositiveCompletion(reply)){
				client.disconnect();
				return success;
			}
			client.enterLocalPassiveMode();
			//client.changeWorkingDirectory(pathname);
			FTPFile[] files = client.listFiles();
			System.out.println(files.length);
			client.storeFile(filename, input);
			input.close();
			client.logout();
			success = true;
		} catch (SocketException e) {
			e.printStackTrace();
		} catch (IOException e) {
			e.printStackTrace();
		}finally{
			if (client.isConnected()) {
				try {
					client.disconnect();
				} catch (IOException e) {
					e.printStackTrace();
				}
			}
		}
		return success;
	}  

    我們在client.listFiles()之前加上這句client.enterLocalPassiveMode();防止執行listFiles()的時候程序出現“卡死”的現象。

 

發佈了87 篇原創文章 · 獲贊 3 · 訪問量 10萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章