linux下SpringMVC上传文件中文文件名显示乱码问题
2020-02-01 07:40
1911 查看
方法一
在springmvc的配置文件中添加
<!-- 配置文件上传,如果没有使用文件上传可以不用配置,当然如果不配,那么配置文件中也不必引入上传组件包 --> <bean id="multipartResolver"class="org.springframework.web.multipart.commons.CommonsMultipartResolver"> <!-- 默认编码 --> <property name="defaultEncoding" value="UTF-8" /> <!-- 文件大小最大值 --> <property name="maxUploadSize" value="10485760000" /> <!-- 内存中的最大值 --> <property name="maxInMemorySize" value="40960" /> <!-- 指定上传文件的临时路径 --> <!-- <property name="uploadTempDir" value="uploadTempDirectory" /> --> </bean>
方法二:
在windows上使用ftp上传文件到Linux上,中文名称在Linux系统中显示为乱码。虽然将Linux的env设置了LANG=en_US.UTF-8,并且本地的Shell客户端编码也设置成UTF-8,但在Shell中(或通过http访问),仍是乱码……
原因在于,Windows 的文件名中文编码默认为GBK,压缩或者上传后,文件名还会是GBK编码,而Linux中默认文件名编码为UTF8,由于编码不一致所以导致了文件名乱码的问题,解决这个问题需要对文件名进行转码。
yum install convmv convmv -f gbk -t utf-8 -r --notest /home/wwwroot
常用参数:
-r 递归处理子文件夹
–notest 真正进行操作,默认情况下是不对文件进行真实操作
–list 显示所有支持的编码
–unescap 可以做一下转义,比如把%20变成空格
-i 交互模式(询问每一个转换,防止误操作)
linux下有许多方便的小工具来转换编码:
文本内容转换 iconv
文件名转换 convmv
mp3标签转换 python-mutagen
- 点赞
- 收藏
- 分享
- 文章举报
相关文章推荐
- WINDOWS上传中文文件名文件到LINUX显示乱码
- linux下将中文文件名文件cp到windows目录下后文件名乱码问题的解决
- 解决httpclient上传文件的时候中文文件名乱码的问题
- java上传文件到linux上 防止文件名中文乱码
- asp.net 将文件 二进制 上传 保存 再显示,解决文件流中文乱码问题。
- 解决上传文件时服务端中文文件名乱码问题
- 解决HttpClient的FilePart上传文件中使用中文名称文件名乱码问题
- 解决windows传送到linux下中文文件名及文件内容乱码问题
- 解决上传文件时服务端中文文件名乱码问题
- 解决FAT32文件系统分区中文文件名在Linux下显示乱码
- 解决HttpClient的FilePart上传文件中使用中文名称文件名乱码问题
- linux下将中文文件名文件cp到windows目录下后文件名乱码问题的解决
- 解决FlashFXP5 不能下载中文文件名文件的问题(显示文件名中文正常下载文件名是乱码)
- 解决COS、FileUpload上传文件时中文文件名乱码问题
- 使用Springmvc和commons-fileupload-1.2.2.jar实现上传文件时,中文文件名乱码
- 解决windows传送到linux下中文文件名及文件内容乱码问题
- 中文名文件上传到linux服务器文件名乱码问题(转)
- HttpClient 4.3.* 上传带中文文件名文件文件名乱码问题的解决
- 整理java文件下载(中文乱码、火狐浏览器乱码、空格变+号、文件名包含空格时文件名可能显示不全等问题)
- php上传中文文件文件名乱码问题