java上传FTP为什么总是返回false?

xiaozejun 2011-06-07 05:05:30
java上传FTP的时候 返回false
上传不了 请大家帮忙看看原因?
程序不抱错
100分奉上



package cn.b2ge.ftp;

import java.io.File;
import java.io.FileInputStream;

import org.apache.commons.net.ftp.FTPClient;

public class FTPFile3 {

/**
* @param args
*/
public static void main(String[] args) {
uploadFileByApacheByBinary("192.168.1.131","xiaozejun","xiaozejun","/","hello.txt");
}

public static void uploadFileByApacheByBinary(String server,String userName, String userPassword, String path, String fileName) {

FTPClient ftpClient = new FTPClient();
try {
FileInputStream in=new FileInputStream(new File("c:/hello.txt"));
ftpClient.connect(server);
ftpClient.login(userName, userPassword);
ftpClient.changeWorkingDirectory(path);
ftpClient.setFileType(FTPClient.BINARY_FILE_TYPE);
boolean flag = ftpClient.storeFile(new String(fileName.getBytes("GBK"), "iso-8859-1") , in);
System.out.println(flag);
in.close();
} catch (Exception e) {
e.printStackTrace();
} finally {
if(ftpClient.isConnected()) {
try {
ftpClient.disconnect();
} catch (Exception e) {
e.printStackTrace();
}
}
}
}
}
...全文
2007 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
我也想知道啊。为什么的??
oO临时工Oo 2011-08-19
  • 打赏
  • 举报
回复
以下观点供参考:

服务器有没给修改的权限,如果只有upload权限是没用的,如果没给修改的权限可能就就有问题了,因为可能上传的FTP组件首先是新建一个文件,然后再往文件写数据,中间还有可能涉及到修改文件名,但是如果没有修改权限就可能导致失败。这个是我在实际过程中遇到的。
liuyuhua0066 2011-08-19
  • 打赏
  • 举报
回复
服务器开上传权限了么?
zerone0811 2011-08-19
  • 打赏
  • 举报
回复
加上这句ftpClient.enterLocalPassiveMode();试试
romanitc 2011-06-07
  • 打赏
  • 举报
回复
有可能是权限作怪!测试测试
老9 2011-06-07
  • 打赏
  • 举报
回复
那就是没有往文件里面写啊,是用的linux吗?看看权限。有权限问题。
xiaozejun 2011-06-07
  • 打赏
  • 举报
回复
不是找不到路径
问题补充:文件上传上去了 只是上传上去的是空文件
文件里面的内容没有上传上去
修身0 2011-06-07
  • 打赏
  • 举报
回复
你如果采用的是windows系统采用c://hello.txt
他可能找不到路径返回来的就是FALSE

安心逍遥 2011-06-07
  • 打赏
  • 举报
回复
没做过相关内容,帮顶。祝楼主好运
xianaofei 2011-06-07
  • 打赏
  • 举报
回复
ftpClient.setFileType(FTPClient.BINARY_FILE_TYPE);
这个地方貌似是少写了什么
还有一个注意的地方 就是必须关闭每次上传的时候用完了关闭

67,513

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧