1

我在linux上遇到了一个奇怪的错误:

我使用 Net::FTP 下载文件。一旦 get() 方法返回,我调用系统解压缩函数:

   system("unzip -j $file");

大多数情况下,下载的文件似乎还没有完成:

   error [<filepath>]:  missing 1862 bytes in zipfile

为什么会发生这样的事情?我想,我可以编写代码来等待和处理错误,但是为什么当 Net:FTP::get() 返回时文件系统没有更新?

4

1 回答 1

1

正确的。需要为 ftp 传输设置二进制模式。

是什么让它决定使用 ascii?我认为现在二进制是自动的。它不是!

于 2013-05-01T16:21:33.263 回答