最近做ftp对接的需求,文件下载下来后,打开提示文件损坏。直接用ftp命令登录下载下来的文件就没问题。说明是java程序的问题。百度一下很快就找到了解决方案。

解决方案:

在下载或上传文件之前,设置文件编码类型为二进制文件,问题解决。(我是放在ftpclient初始化的时候就设置好)

ftpClient.setFileType(FTP.BINARY_FILE_TYPE);

补充姿势:

common-net的ftpclient默认是使用ASCII_FILE_TYPE,文件会经过ASCII编码转换,所以可能会造成文件损坏。所以我们需要手动指定其文件类型为二进制文件,屏蔽ASCII转换的操作,避免文件在转换的过程中受损。

下面是common-net 3.6 的API对这两种文件格式的说明

common-net 3.6 API地址:http://commons.apache.org/proper/commons-net/apidocs/

转载 https://blog.csdn.net/libertine1993/article/details/88694042

java ftpClient 下载文件损坏问题相关推荐

  1. java ftp获取文件夹大小,java 用FTPClient 下载文件时不显示总大小?解决方案

    java 用FTPClient 下载文件时不显示总大小? FTPClient ftp = new FTPClient(); ftp.setControlEncoding("utf-8&quo ...

  2. java线程下载文件_Java多线程下载文件实例详解

    本文实例为大家分享了Java多线程下载文件的具体代码,供大家参考,具体内容如下 import java.io.File; import java.io.InputStream; import java ...

  3. Java多线程下载文件

    Java多线程下载文件 优化:合理利用服务器资源,将资源利用最大化,加快下载速度 一般有两种方式: 线程池里面有N个线程,多线程下载单个文件,将网络路径的文件流切割成多快,每个线程下载一小部分,然后写 ...

  4. java io流文件损坏_java使用io流下载.docx. xlsx文件,出现文件损坏提示

    介绍 在使用io流下载服务器上的资源文件时,出现以下提示:但是选择"是"后文件可以正常打开 参考 代码如下: [codesyntax lang="java"] ...

  5. Java FTP下载文件以及编码问题小结

    问题 之前在开发过程中,遇到了一点问题,我要访问一个FTP服务器去下载文件详细情况如下: 1. 需要传入一个可能为中文的文件名: 2. 通过文件名去FTP上寻找该文件: 3. FTP服务器的命名编码为 ...

  6. SpringBoot打成jar包部署,Excel模板下载文件损坏,提示恢复问题处理

    Spring Boot 静态资源Excel模板文件下载遇到的坑 问题描述: 使用spring boot,在resource/static目录下,有Excel模板文件, 需要提供给用户下载,用于数据的导 ...

  7. java smb下载文件代码_java利用SMB共享文件进行局域网文件的下载及apk升级

    最近在学习android,领导想做一个测试利用局域网进行电视apk的自动升级程序,最新代码是放在本地局域网电脑上面的,在此写下代码调试过程中遇到的问题及解决方法:一开始用想用FTPClient和Htt ...

  8. java批量下载文件为zip包

    批量下载文件为zip包的工具类 package com.meeno.trainsys.util;import javax.servlet.http.HttpServletRequest; import ...

  9. php 下载的文件损坏,PHP下载文件损坏与打开乱码问题解决办法

    以前我们是使用php生成下载文件时使用中文乱码了这个问题不会影响到文件的打开使用了,但小编今天 碰到下载文件打开乱码与文件损坏问题了,那么此问题要如何来处理 ?具体操作步骤如下 最近更新一个项目,下载 ...

最新文章

  1. Sublime Text保存文件时自动去掉行末空格
  2. oracle 表空间操作
  3. Ubuntu安装VLC播放器
  4. 基于Matlab的标记分水岭分割算法(imreconstruct)
  5. go标准命令详解0.1 go build
  6. Git常见报错及解决方法
  7. 面向对象的23种设计模式
  8. SpringCloud Eureka自我保护机制
  9. DDD~DDD从零起步架构说明
  10. dedecms如何快速删除跳转的文章(记得清空内容回收站)
  11. 硬件基础知识(11)---交变电压下的电容特性
  12. [SAP ABAP开发技术总结]动态修改选择屏幕
  13. backbone js学习笔记之第二篇Model层
  14. 贝莱德砸10亿美元买下指数定制公司,释放什么信号?
  15. 《数字图像处理 第三版》(冈萨雷斯)——第十二章 目标识别
  16. IBM Rhapsody 报错找不到 VC11 目录的解决方法
  17. 企业集团合并财务报表
  18. Pandas中DataFrame基本函数整理(全)
  19. 目标拦截问题—微分对策
  20. 入坑rockchip 基础信息资料

热门文章

  1. Spring+百度Api实现人脸认证对比(详细篇)
  2. 【网络】RPC通信之Apache Thrift
  3. P1424 小鱼的航程(改进版)
  4. JAVA面向对象(OOP)-类和对象
  5. 两个字符串中最长公共单词 C语言
  6. table+jq实现日期排期表
  7. 打印魔方阵(C语言)
  8. 一文读懂 快速掌握示波器使用及原理
  9. 支付宝证书模式支付接口
  10. 2019 原创技术干货整理