1

FTP Serverを使用して画像ファイルをダウンロードしますFTPClient。私の見た目は次のようになります:

public class FtpDownloadDemo
{
 public static void main(String[] args)
 {
  FTPClient client = new FTPClient();
  FileOutputStream fos = null;

  try
  {
    client.connect("ftp.domain.com");
    client.login("user", "pass");

    //
    // The remote filename to be downloaded.
    //
    String filename = "side.jpg";
    fos = new FileOutputStream(filename);

    //
    // Download file from FTP server
    //
    client.retrieveFile("/" + filename, fos);
  }
  catch (IOException e)
  {
    e.printStackTrace();
  }
  finally
  {
    try
    {
      if (fos != null)
      {
        fos.close();
      }
      client.disconnect();
    }
    catch (IOException e)
    {
      e.printStackTrace();
    }
  }

 }
}

ファイルをダウンロードすると、以下に示すように出力が歪んで表示されます。

ここに画像の説明を入力

すべてのバイトが受信されたかどうかを確認する方法はありますか?それ以外の場合は、すべてが受信されるまで待ちますか?

4

1 に答える 1

3

本当の問題は、転送がバイナリ モードではなく ASCII モードで行われていることにあるのではないかと強く思います。

client.setFileType(FTP.BINARY_FILE_TYPE);転送を開始する前に電話してみてください。

于 2011-08-26T14:39:20.557 に答える