gpt4 book ai didi

java - 检查 FTP 客户端下载是否已收到所有字节

转载 作者:行者123 更新时间:2023-11-29 06:10:07 25 4
gpt4 key购买 nike

我使用 FTPClientFTP 服务器 下载图像文件。我的样子是这样的:

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();
}
}

}
}

下载文件后,输出看起来失真,如下所示;

enter image description here

有没有办法检查是否所有字节都已收到,否则等到所有字节都收到?

最佳答案

我强烈怀疑真正的问题在于传输是以 ASCII 而非二进制模式完成的。

尝试调用 client.setFileType(FTP.BINARY_FILE_TYPE);在开始传输之前。

关于java - 检查 FTP 客户端下载是否已收到所有字节,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7206284/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com