FTP下載致使Zip解壓失敗的緣由

情形:網關經過FTP下載快錢對帳文件時經過Apache下commons-net的commons-net-3.5.jar進行封裝,對帳文件中有中文和英文的文字,大部分狀況下可以下載成功,並且也能解壓成功。可是偶爾會出現下載了zip的文件,可是解壓失敗的狀況。
 
解決辦法:FTP網絡傳輸沒有設置二進制文件類型:ftpClient.setFileType(FTP.BINARY_FILE_TYPE);
以下截圖所示,設置二進制文件類型後便可正常下載和解壓!而且只能在登陸以後進行非設置才能生效。
 

 

上面在未設置二進制文件類型時,下載的zip大小爲3390,不能解壓;設置二進制文件類型後,下載的zip大小爲3391,可以解壓。
 
引發緣由: Binary模式不會對數據進行任何處理。
 Ascii模式會將回車換行轉換爲本機的回車字符,fileType是ascii的,因此碰到中文可能會有問題
 
FTP.ASCII_FILE_TYPE和FTP.BINARY_FILE_TYPE 二者區別: http://www.cnblogs.com/mickole/articles/3643819.html
 

 

相關文章
相關標籤/搜索