私は単一のファイルをダウンロードするためにこのコードを持っています。
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.OutputStream;
import org.apache.commons.net.ftp.FTPClient;
public class NetTest {
public static void main(String[] args){
FTPClient client = new FTPClient( );
OutputStream outStream;
try {
これはサーバーとパスワードの一部です。
client.connect( "servername" );
client.login("noman123", "pass");
String remoteFile = "/a.txt";
outStream = new FileOutputStream( "a.txt" );
単純な塗りつぶしのダウンロードですが、この行にエラーがあります
client.retrieveFile( remoteFile, outStream );
} catch(IOException ioe) {
System.out.println( "Error communicating with FTP server." );
} finally {
try {
client.disconnect( );
} catch (IOException e) {
System.out.println( "Problem disconnecting from FTP server" );
}
}
}
}
そしてそれは私にエラーを与えます私はあなたが今直面している問題を理解できることを願っています
java.net.SocketException:ソフトウェアによる接続の中止:java.net.SocketOutputStream.socketWrite0(ネイティブメソッド)のjava.net.SocketOutputStream.socketWrite(SocketOutputStream.java:109)のソケット書き込みエラーjava.net.SocketOutputStream.write( SocketOutputStream.java:153)at sun.nio.cs.StreamEncoder.writeBytes(StreamEncoder.java:221)at sun.nio.cs.StreamEncoder.implFlushBuffer(StreamEncoder.java:291)at sun.nio.cs.StreamEncoder.implFlush (StreamEncoder.java:295)at sun.nio.cs.StreamEncoder.flush(StreamEncoder.java:141)at java.io.OutputStreamWriter.flush(OutputStreamWriter.java:229)at java.io.BufferedWriter.flush(BufferedWriter。 java:254)org.apache.commons.net.ftp.FTP .__ send(FTP.java:496)atorg.apache.commons.net.ftp.FTP。sendCommand(FTP.java:470)at org.apache.commons.net.ftp.FTP.sendCommand(FTP.java:547)at org.apache.commons.net.ftp.FTP.port(FTP.java:872) org.apache.commons.net.ftp.FTPClientで。openDataConnection(FTPClient.java:667)at org.apache.commons.net.ftp.FTPClient.retrieveFile(FTPClient.java:1595)at FtpDownloadDemo.main(FtpDownloadDemo.java:25)