Java FTPClient 如何下载jpg 下载下来的图片大小0字节,是什么问题?如何解决?
FTP路径:本地路径:/***下载指定文件到指定目录中*@paramhost主机IP*@paramport端口*@paramusername用户名*@parampassw...
FTP路径:
本地路径:
/**
* 下载指定文件到指定目录中
* @param host 主机IP
* @param port 端口
* @param username 用户名
* @param password 密码
* @param rmotePath FTP路径
* @param fileName 文件名
* @param localPath 本地路径
* @return
*/
private static boolean downloadFileFromRmote(String host, Integer port, String username, String password, String rmotePath, String fileName, String localPath) {
boolean flag = false;
FTPClient ftpClient = new FTPClient();
FileOutputStream fos = null;
try {
ftpClient.connect(host, port);
ftpClient.login(username, password);
int reply;
reply = ftpClient.getReplyCode(); //230
if (!FTPReply.isPositiveCompletion(reply)) {
ftpClient.disconnect();
return flag;
}
ftpClient.changeWorkingDirectory(rmotePath);
File localFile = new File(localPath + File.separator + fileName);
if (!localFile.exists()) {
localFile.createNewFile();
}
ftpClient.setBufferSize(1024);
//设置文件类型(二进制)
ftpClient.setFileType(FTPClient.BINARY_FILE_TYPE);
fos = new FileOutputStream(localFile);
System.out.println(fos);
ftpClient.retrieveFile(fileName, fos);
flag = true;
} catch (SocketException e) {
System.out.println("连接失败!");
e.printStackTrace();
} catch (IOException e) {
System.out.println("下载失败!");
e.printStackTrace();
} finally {
try {
if (fos != null) {
fos.close();
}
if (ftpClient.isConnected()) {
ftpClient.disconnect();
}
} catch (IOException e) {
System.out.println("下载失败!");
e.printStackTrace();
}
}
return flag;
} 展开
本地路径:
/**
* 下载指定文件到指定目录中
* @param host 主机IP
* @param port 端口
* @param username 用户名
* @param password 密码
* @param rmotePath FTP路径
* @param fileName 文件名
* @param localPath 本地路径
* @return
*/
private static boolean downloadFileFromRmote(String host, Integer port, String username, String password, String rmotePath, String fileName, String localPath) {
boolean flag = false;
FTPClient ftpClient = new FTPClient();
FileOutputStream fos = null;
try {
ftpClient.connect(host, port);
ftpClient.login(username, password);
int reply;
reply = ftpClient.getReplyCode(); //230
if (!FTPReply.isPositiveCompletion(reply)) {
ftpClient.disconnect();
return flag;
}
ftpClient.changeWorkingDirectory(rmotePath);
File localFile = new File(localPath + File.separator + fileName);
if (!localFile.exists()) {
localFile.createNewFile();
}
ftpClient.setBufferSize(1024);
//设置文件类型(二进制)
ftpClient.setFileType(FTPClient.BINARY_FILE_TYPE);
fos = new FileOutputStream(localFile);
System.out.println(fos);
ftpClient.retrieveFile(fileName, fos);
flag = true;
} catch (SocketException e) {
System.out.println("连接失败!");
e.printStackTrace();
} catch (IOException e) {
System.out.println("下载失败!");
e.printStackTrace();
} finally {
try {
if (fos != null) {
fos.close();
}
if (ftpClient.isConnected()) {
ftpClient.disconnect();
}
} catch (IOException e) {
System.out.println("下载失败!");
e.printStackTrace();
}
}
return flag;
} 展开
展开全部
使用方法不对吧,你看看FTPClient这个类,提供了deleteFile方法,应该是用这个进行删除文件的
至于用命令的方式删除,你要看哈FTPCommand这个类里面的常量命令,有DELE和DELETE两个,我没用过命令的方式,不知道这两个的区别,需要你自己试了
至于用命令的方式删除,你要看哈FTPCommand这个类里面的常量命令,有DELE和DELETE两个,我没用过命令的方式,不知道这两个的区别,需要你自己试了
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询