博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
java ftpclient问题
阅读量:4052 次
发布时间:2019-05-25

本文共 1613 字,大约阅读时间需要 5 分钟。

java ftpclient问题(sun.net.ftp.FtpClient)

1 sun.net.ftp.FtpProtocolException: PORT :501 PORT not allowed after EPSV ALL, active mode off 很多ftp服务器传输时采用被动模式,可用命令ftpClient.sendServer("PASV")解决。后面不要int reply = ftpClient.readServerResponse();否则问题依旧。

 

 2 java.net.SocketException: Connection reset 导致此问题的出现是因为下载还没结束,就提前关闭客户端。也可以这样理解:在客户端与服务端建立了一个流通道,这个流通道一端进,一端出,在一端持续进的时候,你把出的一端给关了,这时就会报connection reset异常。

    当然,正常应当在流进结束以后,可往往在读一个大文件的时候,如何判断已结束呢?当然可以用命令ftpClient.sendServer("QUIT")解决。

 /*

FTP远程命令列表 USER PORT RETR ALLO DELE SITE XMKD CDUP FEAT PASS PASV STOR REST CWD STAT RMD XCUP OPTS ACCT TYPE APPE RNFR XCWD HELP XRMD STOU AUTH REIN STRU SMNT RNTO LIST NOOP PWD SIZE PBSZ QUIT MODE SYST ABOR NLST MKD XPWD MDTM PROT

 */

/*

在服务器上执行命令,如果用sendServer来执行远程命令(不能执行本地FTP命令)的话,所有FTP命令都要加上rn ftpclient.sendServer("XMKD /test/bbrn"); //执行服务器上的FTP命令 ftpclient.readServerResponse一定要在sendServer后调用 nameList("/test")获取指目录下的文件列表 XMKD建立目录,当目录存在的情况下再次创建目录时报错 XRMD删除目录 DELE删除文件

*/

FtpClient ftpClient = new FtpClient();

// 创建FtpClient对象 ftpClient.openServer(server);

 // 连接FTP服务器

 ftpClient.login(user, password);

 if (path.length() != 0) ftpClient.cd(path);

 ftpClient.binary();

 // ftpClient.sendServer("PASV");

// int reply = ftpClient.readServerResponse();

 TelnetInputStream is = ftpClient.get("smit.log");

 // TelnetInputStream is = ftpClient.list();

 // TelnetInputStream is=ftpClient.nameList(path);

  int c;

while ((c = is.read()) != -1) {

   System.out.print((char) c);

}

is.close();

// ftpClient.closeServer();

// 退出FTP服务器

// ftpClient.sendServer("GET smit.logrn");

 int reply = ftpClient.readServerResponse();

  ftpClient.sendServer("QUITrn");

转载地址:http://edtci.baihongyu.com/

你可能感兴趣的文章
UVa 540 - Team Queue 数据结构专题
查看>>
UVa 11234 Expressions 二叉树 层次遍历 广搜
查看>>
UVa 548 - Tree 二叉树的重建——中序遍历与后续遍历进行建树
查看>>
UVa 112 - Tree Summing 二叉树构造, 二叉树路径和
查看>>
UVa 712 - S-Trees
查看>>
UVa 327 - Evaluating Simple C Expressions
查看>>
UVa 699 - The Falling Leaves 二叉树的落叶
查看>>
UVa 297 - Quadtrees 四叉树, 及其在编码图像的应用
查看>>
UVa 10562 - Undraw the Trees (不限制儿子个数的树)
查看>>
UVa 572 - Oil Deposits 搜索专题
查看>>
UVa 439 - Knight Moves 搜索专题
查看>>
UVa 657 - The die is cast 搜索专题
查看>>
UVa 784 - Maze Exploration 搜索专题
查看>>
UVa 705 - Slash Maze, 斜线迷宫
查看>>
UVa 196 - Spreadsheet
查看>>
UVa 10557 - XYZZY
查看>>
UVa 10004 - Bicoloring
查看>>
HDU 3938 Portal(离线+Kruskal+并查集)
查看>>
poj 1639 Picnic Planning(最小度限制生成树)
查看>>
CodeForces 236B - Easy Number Challenge(数论:求因子个数)
查看>>