ftp连接 java.net.ConnectException: Connection refused

 http://zhidao.baidu.com/question/245219177.html

JAVA编写FTP连接报错java.net.ConnectException: Connection refused: connect FTP

2011-3-29 16:43
提问者:liulyxb | 浏览次数:512次
代码如下:
import java.io.BufferedReader;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStreamReader;

import sun.net.TelnetOutputStream;
import sun.net.TelnetInputStream;
import sun.net.ftp.FtpClient;

public class FtpTest {
String localfilename;

String remotefilename;

FtpClient ftpClient;

// server:服务器名字
// user:用户名
// password:密码
// path:服务器上的路径
public void connectServer(String ip, int port,String user
                , String password,String path) {

try {
ftpClient = new FtpClient();
ftpClient.openServer(ip,port);
ftpClient.login(user, password);
System.out.println("login success!");
if (path.length() != 0) ftpClient.cd(path);
ftpClient.binary();
} catch (IOException ex) {
System.out.println("not login");
System.out.println(ex);
}
}

public void closeConnect() {
try {
ftpClient.closeServer();
System.out.println("disconnect success");
} catch (IOException ex) {
System.out.println("not disconnect");
System.out.println(ex);
}
}



public static void main(String agrs[]) {

FtpTest ft = new FtpTest();
//以连接本机做测试
ft.connectServer("127.0.0.1",21, "实际的账号", "实际密码","/");
}
}

问题补充:

错误提示:

not login
java.net.ConnectException: Connection refused: connect

2011-3-29 16:51
满意回答
你本地有没有FTP服务器在运行?
追问
你的意思是?
回答
你本地有没有FTP的 server端? 
在cmd窗口里用下面命令看有没有端口为21的程序。
C:\Users\Administrator>netstat -a
追问
我本机没有server端,你所说的FTP server不一定是JAVA写的吧?以前我都是用FileZilla远程连接到那台机器。把文件放上去。现在我是想写代码让程序自己上传到这台机器上。可以一直就连接不上。21端口没有用,PING远程机器也可以PING通
 
回答
那你127.0.0.1应该改成远程机器的IP。
追问
我改过了,也试过了,还是报这个错误。
回答
端口是21吗,还有用户名密码注意大小写等
追问
端口是21,自己的机器账号密码肯定没错,连远程的机器用FileZilla测试过是可以连接的。所以账号密码肯定没问题。问题到底出在哪啊?困扰两天了
回答
这个应该没问题。
如果端口、用户名、密码和你在FileZilla里设置的一模一样,那可能是你远程服务器上的ftp需要加密传输等等其它设置。你可以仔细比较FileZilla上有什么不同

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值