文件名含中文,上传到FTP文件服务器文件名乱码 linux 您所在的位置:网站首页 c盘文件名称乱码 文件名含中文,上传到FTP文件服务器文件名乱码 linux

文件名含中文,上传到FTP文件服务器文件名乱码 linux

2023-11-09 06:46| 来源: 网络整理| 查看: 265

环境说明: 操作系统:Windowsftp服务器:LinuxJava中: org.apache.commons.net.ftp.FTPClient;依赖 commons-net commons-net 3.6 乱码表现: 浏览器直接登陆ftp,中文显示正常 Windows下cmd命令窗口连接ftp,中文显示正常xshell连接ftp,中文乱码,比如显示成问号啥的

分析:1、2都处在Windows下,3处在linux下

乱码原因:

Windows默认GBK编码,linux默认UTF-8,所以在Windows下上传的中文到Linux就会显示为乱码。如果我们把Linux的默认编码改为GBK,就不会出现乱码啦!哈哈哈^_^

方式一:

修改xshell的编码方式:地球图标–Chinese Simplified (GBK) 这里写图片描述 这里写图片描述

看看中文名称有没有正常,如果没有,你就需要看看方式二了

方式二:

使用locale命令查看linux编码方式:

[root@i-e6e1992e ~]# locale LANG=en_US.UTF-8 LC_CTYPE="en_US.UTF-8" LC_NUMERIC="en_US.UTF-8" LC_TIME="en_US.UTF-8" LC_COLLATE="en_US.UTF-8" LC_MONETARY="en_US.UTF-8" LC_MESSAGES="en_US.UTF-8" LC_PAPER="en_US.UTF-8" LC_NAME="en_US.UTF-8" LC_ADDRESS="en_US.UTF-8" LC_TELEPHONE="en_US.UTF-8" LC_MEASUREMENT="en_US.UTF-8" LC_IDENTIFICATION="en_US.UTF-8" LC_ALL=

很明显,就是UTF-8啦,下面就要改成跟Windows一样的GBK编码, 命令行键入:vi /etc/profile 即:编辑profile文件 然后在profile文件里面加上如下两行代码: (键盘键入a/i进入编辑模式)

export LC_ALL="zh_CN.GBK" export LANG="zh_CN.GBK"

Esc键退出编辑模式,:wq再Enter一下就是保存并退出啦!哈哈,接下来要使这个设置生效我们还需要进行下一步:

命令行键入:[root@i-e6e1992e etc]# source /etc/profile

完事再locale一下看看,是不是就变成下面这样啦^_^

[root@i-e6e1992e Class]# locale LANG=zh_CN.GBK LC_CTYPE="zh_CN.GBK" LC_NUMERIC="zh_CN.GBK" LC_TIME="zh_CN.GBK" LC_COLLATE="zh_CN.GBK" LC_MONETARY="zh_CN.GBK" LC_MESSAGES="zh_CN.GBK" LC_PAPER="zh_CN.GBK" LC_NAME="zh_CN.GBK" LC_ADDRESS="zh_CN.GBK" LC_TELEPHONE="zh_CN.GBK" LC_MEASUREMENT="zh_CN.GBK" LC_IDENTIFICATION="zh_CN.GBK" LC_ALL=zh_CN.GBK

再ls一下看看你上传的文件是不是就正常显示中文了呢?~^_^



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有