我想用apache commons=net 1.4.1在FTP上上传一个文本文件。
我的代码:
public static void UploadTextFile(String host, String name) {
try {
FTPClient ftp = new FTPClient();
ftp.connect(host);
int reply;
ftp.login("u757471605", "cacat1");
String str = "GG FRT O IESIT";
InputStream input = new ByteArrayInputStream(str.getBytes());
String loc = host + "/public_html/" + name;
ftp.storeFile(loc, input);
ftp.disconnect();
System.out.println(loc);
// this.ftp.storeFile(hostDir + fileName, input);
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
这不会捕获任何错误,但文件不会被上传。
我哪里错了?
我发现
System.out.println(ftp.storeFile(loc, input))
如果我将代码放入输出日志中,将得到文本false,而在ftp.login中将得到文本true。可能的问题是什么
发布于 2014-03-14 15:59:37
我的代码无法工作,因为我试图在ftp地址+ ftp地址+文件名上存储一个文件,我只需要再次输入文件的名称,而不是ftp。
public static void UploadTextFile(String host, String name) {
try {
FTPClient ftp = new FTPClient();
ftp.connect(host);
int reply;
System.out.println(ftp.login("u757471605", "cacat1"));
ftp.enterLocalPassiveMode();
System.out.println(ftp.getReplyString());
String str = "GG FRT O IESIT";
InputStream input = new ByteArrayInputStream(str.getBytes());
String loc = "/public_html/" + name;
System.out.println(ftp.storeFile(loc, input));
System.out.println(ftp.getReplyString());
ftp.disconnect();
System.out.println(loc);
// this.ftp.storeFile(hostDir + fileName, input);
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
太好了。
https://stackoverflow.com/questions/22409644
复制