Android客户端实现FTP文件(包括图片)上传应该没什么难度。写下来就了为了记录一下,望能帮到
新手。
需要用到 commons-net-3.0.1.jar,后面附上jar包。
直接上代码:
[
java]
/**
* 通过ftp上传文件
* @param url ftp
服务器地址 如: 192.168.1.110
* @param port 端口如 : 21
* @param username 登录名
* @param pass
word 密码
* @param remotePath 上到ftp
服务器的磁盘路径
* @param fileNamePath 要上传的文件路径
* @param fileName 要上传的文件名
* @return
*//www.at
cpu.com
public String ftpUpload(String url, String port, String username,String pass
word, 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, pass
word);
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;
}