2008-11-14 59 views
0

我想FTP一些蘋果DMG文件,如果我們通過Safari或IE瀏覽器手動執行它,它會在目的地處結束並且沒有損壞。但是,如果我使用我們一直使用的免費軟件FTP客戶端,並且zip和exe的使用非常成功,或者如果我使用Powershell腳本,我完成了(根據另一個stackover flow的問題答案進行了調整),然後我丟失了大約1/2 Mb的內容一個10.5 Mb的文件和dmg已損壞。有沒有人有任何線索可能會出錯?我可以做些什麼來阻止它?到目前爲止,我所嘗試過的所有方法都是在發送之前對dmg進行gzip並且完成任何事情。再一次,除dmg之外的任何東西都可以傳播得很好。通過FTP的Apple DMG文件被損壞,爲什麼?

僅供參考我使用二進制模式傳輸,這樣就不會it..thx雖然

+0

大家都知道。它一定是我使用的客戶端與我的PowerShell腳本具有完全相同的問題。我使用StreamReader來獲取傳輸字節,並假設編碼不正確。我切換到了一個沒有的BinaryReader,它現在可以工作。 – Alex 2008-11-14 14:53:47

回答

0

大家都知道。它一定是我使用的客戶端與我的PowerShell腳本具有完全相同的問題。我使用StreamReader來獲取傳輸字節,並假設編碼不正確。我切換到了一個沒有的BinaryReader,它現在可以工作。

1

好像你的客戶把dmg文件爲文本文件。 在您的ftp客戶端中設置二進制傳輸模式,它將按原樣ftp。

我一直認爲在ftp中ascii傳輸模式只是簡單的愚蠢。它造成更多的麻煩,那麼它是值得的。

1

您確定除DMG以外的所有東西都可以正確傳輸嗎?這聽起來像是傳輸編碼的問題。 FTP支持二進制和ASCII傳輸類型,主要由於歷史包袱。在過去,帶寬越來越高時,離開高位(ASCII不使用)是節省時間的好時機。但是,如果你有任何字節的位設置,ASCII傳輸模式將失去它們 - 因此「二進制」模式,它不截斷。

通常,切換傳輸模式的命令是「bin」或「ascii」。