大家好:请帮我看看,谢谢
贴上部分代码:

ftpClient.binary();   
  File file_in = new File(filename); 
         if (!file_in.exists()) return -1; 
         if (file_in.length()==0) return -2; 
         os = ftpClient.put(newname); 
         result = file_in.length(); 
         is = new FileInputStream(file_in); 
         byte[] bytes = new byte[1024]; 
         int c= 0; 
         while ((c = is.read(bytes)) !=1) { 
              os.write(bytes, 0, c); 
            
         }

ftp上传文件:报2个异常,但我用ftp工具是可以上传的,证明用户是有写权限的
感觉是文件流的问题,但又找不到原因。
异常:java.net.SocketException: Software caused connection abort: socket write error
异常:sun.net.ftp.FtpProtocolException: Error reading FTP pending reply

解决方案 »

  1.   

    你指定的地址不正确吧,还有ftp端口是21
      

  2.   

    怎么用的InputStream,出了socket异常肯定是ftp的连接有问题,检查地址,用户名,密码,端口的设置
      

  3.   

    是要用InputStream啊,我要向ftp服务器上传文件,连接肯定没问题,下载的方法都可以,另外我是用eclipse debug的,单步调试都过的
    ,就是在while ((c = is.read(bytes)) !=1) { 
                  os.write(bytes, 0, c); 
                
            } 
    循环后报错 了
      

  4.   

    我也知道输出流没写好,可换了几种方法,还是不对 TelnetOutputStream os = null;
         FileInputStream is = null;