情形:网关通过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

转载于:https://www.cnblogs.com/hupu-jr/p/7559902.html

FTP下载导致Zip解压失败的原因相关推荐

  1. 【踩坑】Linux java中ftp下载文件,解压文件损坏,以及图片下载打开只显示下载路径的问题

    [踩坑]Linux java中ftp下载文件,解压文件损坏,以及图片下载打开只显示下载路径的问题 一. 问题重现 二. 问题解决思路 1. 确认是不是上传就导致数据出错了 2. 是不是平台问题 三. ...

  2. php使用ZipArchive扩展实现文件的zip压缩与zip解压

    ZipArchive 是PHP自带的zip扩展类,可以实现对文件或目录实现ZIP文件的压缩和解压,使用前首先要确保PHP ZipArchive扩展已经开启,以下代码亲测可用,但对中文命名的文件不兼容 ...

  3. ftp 自动下载文件并解压

    前几天为了工作想将Ftp文件自动下载解压然后将数据导入到excel,这样上班后就可以直接应用数据了,开始想看好多办法,比如PHP VB 等,但是最后都觉得不太好用,采用了系统自带的DOS 系命令,不过 ...

  4. linux zip 包解压失败

    linux zip包解压失败 Linux 下,使用unzip解压时,报错: $ unzip LINUX.X64_193000_db_home.zip 报错: Archive: LINUX.X64_19 ...

  5. vue+django下载压缩包解压失败处理办法

    (1)压缩包下载后解压失败,处理办法:将responsetype设置为arraybuffer即可 参考: https://bbs.csdn.net/topics/398186621?page=1 (2 ...

  6. .xz是什么文件怎么解压_zip解压app下载-zip解压app安卓版下载v11.5.6

    zip解压APP为用户提供了完全免费的文件解压缩功能服务,超高效的压缩和解压,支持将文档.图片.PDF和图片等多种文件夹进行压缩,压缩和解压的过程稳定高效,不会 影响文件打开也不会有乱码出现.还可以解 ...

  7. android zip解压出错,常见的压缩解压文件出错解决办法

    您是否遇到过精力了好久下回来的压缩吧,结果在解压过程中出现错误的情况呢?比如说此解压失败或压缩文件文件已经损坏?导致解压文件失败.如果遇到这种问题,那就试试常见的压缩解压文件出错解决办法吧.凡事求人不 ...

  8. 固实压缩文件容易损坏_文件解压失败与压缩文件文件已经损坏的解决办法

    压缩文件以减少文件大小和提高传送速度的特点而广受用户欢迎,压缩文件时一般需要电脑安装压缩软件.我们在解压的过程中电脑有的时候会提示:此解压失败或压缩文件文件已经损坏?下面小编就为大家整理了解压文件出错 ...

  9. 计算机二级准考证解压缩失败 文件损坏,文件解压失败与压缩文件文件已经损坏的解决办法...

    压缩文件以减少文件大小和提高传送速度的特点而广受用户欢迎,压缩文件时一般需要电脑安装压缩软件.我们在解压的过程中电脑有的时候会提示:此解压失败或压缩文件文件已经损坏?下面小编就为大家整理了解压文件出错 ...

最新文章

  1. ImportError: No module named tensorflow.compat.v1 忽略已经安装的某个包版本 忽略已安装版本...
  2. android中的json二之json的读写
  3. 移动设备wap手机网页html5通过特殊链接:打电话,发短信,发邮件详细教程
  4. [翻译]load-on-startup 元素的作用
  5. 揭秘全球开发最新趋势!JS开发者达1380万,C#超越PHP,Rust增长最快
  6. java IO流小结
  7. c语言EOF0x99,C语言选择题99道.doc
  8. Linux 按 Ctrl + S 卡死的解决办法
  9. c语言作业的分析,C语言作业分析.doc
  10. 论文笔记_S2D.08-2019-ICRA-使用非对称标注实时联合语义分割和深度估计
  11. 中端存储和高端存储的区别
  12. L2CAP的基本模式(basic mode)数据格式
  13. a possible low-level optimization
  14. 2020-12-09 blastp参数学习
  15. linux一句话精彩问答(05年新版)
  16. Yapi远程命令执行漏洞
  17. Python基础——变量、常量、数字类型、四 列表list、五 字典dict、六 布尔bool、垃圾回收机制、用户交互、运算符、流程控制
  18. AI产品经理能力模型的重点素质:人文素养和灵魂境界
  19. RAMMAP(运行内存清理工具)自动释放内存,并利用pyqt5制作图形界面
  20. 纵横20年,我所经历的数据开放演化史 by 傅一平

热门文章

  1. 280. Wiggle Sort
  2. .NET Framework 工具
  3. 加载指定路径下所有文件
  4. ImageView的属性android:scaleType,即ImageView.setScaleType(ImageView.ScaleType)
  5. 一文看懂卷积神经网络CNN的核心
  6. 05 MapReduce应用案例01
  7. 解决 Alfred 每次开机都提示请求通讯录权限的问题
  8. 雷军的金山云D轮获3亿美元!投后估值达19亿美金
  9. shell 字符串分割
  10. vim编辑器之按键说明