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

  • A+
所属分类:linux技术
摘要

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

一.前期准备

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 

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