解决“在windows里的记事本里编辑的汉字文本文件,上传到linux服务器上出现乱码“问题

一.前期准备

1.首先在windows环境下打开记事本,然后创建一个包含汉字和英文的文本文件,输入内容“测试在windows里的记事本里编辑的文本文

件,上传到linux服务器上会不会出现乱码?test!”。文件名为“测试乱码文件.txt”。

2.使用xftp上传此文件到linux服务器,在linux环境下查看内容,发现输出内容是乱码。

[root@node5 ~]# cat 测试乱码文件.txt 
²㋔՚windowsoµļȊ±¾o±༭µŎı¾τ¼þ£¬ʏ´«µ½linux·þϱǷʏ»᲻»ᴶЖÒ룿

二.编码转换

1.出现此问题的原因是编码问题。我们使用iconv进行编码的转换。

#iconv参数如下:
-f, --from-code=名称 原始文本编码
-t, --to-code=输出编码
-o, --output=FILE 输出文件名
-l, --list 列举所有已知的字符集
#iconv的命令格式为:iconv -f 原始文本编码 -t 输出编码 需要转换的文件名 -o 转换之后的文件名
[root@node5 ~]# iconv -f gb2312 -t utf8 测试乱码文件.txt -o aaa.txt
[root@node5 ~]# ls
201810240430234009.pcm  apache-tomcat-8.0.51.tar.gz  glibc-aarch64-linux-gnu-2.24-2.sdl7.2.noarch.rpm        jdk-8u172-linux-x64.tar.gz  qemu-2.11.0.tar.xz  telnet-0.17-64.el7.x86_64.rpm
a                       busybox-1.24.2               glibc-aarch64-linux-gnu-devel-2.24-2.sdl7.2.noarch.rpm  linux-4.19.77               qemu-4.1.0          test2.txt
aaa.txt                 busybox-1.24.2.tar.bz2       idea快捷键.txt                                          linux-4.19.77.tar           qemu-4.1.0.tar      test.txt
anaconda-ks.cfg         ceshi.txt                    iu.jpg                                                  nginx-1.8.0.tar.gz          rootfs              测试乱码文件.txt
 
[root@node5 ~]# cat aaa.txt 
测试在windows里的记事本里编辑的文本文件,上传到linux服务器上会不会出现乱码?

#此命令可以列举所有已知的字符集
[root@node5 ~]# iconv -l

通过上述操作之后,已经解决了汉字乱码问题。

posted @ 2020-11-10 11:59  人生的哲理  阅读(953)  评论(1编辑  收藏  举报