android用戶端實現FTP檔案(包括圖片)上傳應該沒什麼難度。寫下來就了為了記錄一下,望能幫到新手。
需要用到 commons-net-3.0.1.jar,後面附上jar包。
直接上代碼:
/** * 通過ftp上傳檔案 * @param url ftp伺服器位址 如: 192.168.1.110 * @param port 連接埠如 : 21 * @param username 登入名稱 * @param password 密碼 * @param remotePath 上到ftp伺服器的磁碟路徑 * @param fileNamePath 要上傳的檔案路徑 * @param fileName 要上傳的檔案名稱 * @return */ public String ftpUpload(String url, String port, String username,String password, String remotePath, String fileNamePath,String fileName) { FTPClient ftpClient = new FTPClient(); FileInputStream fis = null; String returnMessage = "0"; try { ftpClient.connect(url, Integer.parseInt(port)); boolean loginResult = ftpClient.login(username, password); int returnCode = ftpClient.getReplyCode(); if (loginResult && FTPReply.isPositiveCompletion(returnCode)) {// 如果登入成功 ftpClient.makeDirectory(remotePath); // 設定上傳目錄 ftpClient.changeWorkingDirectory(remotePath); ftpClient.setBufferSize(1024); ftpClient.setControlEncoding("UTF-8"); ftpClient.enterLocalPassiveMode(); fis = new FileInputStream(fileNamePath + fileName); ftpClient.storeFile(fileName, fis); returnMessage = "1"; //上傳成功 } else {// 如果登入失敗 returnMessage = "0"; } } catch (IOException e) { e.printStackTrace(); throw new RuntimeException("FTP用戶端出錯!", e); } finally { //IOUtils.closeQuietly(fis); try { ftpClient.disconnect(); } catch (IOException e) { e.printStackTrace(); throw new RuntimeException("關閉FTP串連發生異常!", e); } } return returnMessage; }
jar包地址 : http://download.csdn.net/detail/baolong47/4096104
轉:http://blog.csdn.net/baolong47/article/details/7301394