当前位置: 技术问答>linux和unix
修改文件编码方式失败
来源: 互联网 发布时间:2016-08-16
本文导语: 有个文件process.php是utf-8编码 使用命令转换为gbk编码 iconv -f utf-8 -t gbk process.php -o back.php 发现 back.php还是utf-8编码,而且文件大小也没变 用的是set fileencoding 查看的 vimrc 设置如下 set fileencodings=utf-8,gbk locale...
有个文件process.php是utf-8编码
使用命令转换为gbk编码
iconv -f utf-8 -t gbk process.php -o back.php
发现 back.php还是utf-8编码,而且文件大小也没变 用的是set fileencoding 查看的
vimrc 设置如下
set fileencodings=utf-8,gbk
locale如下:
LANG=en_US.UTF-8
LC_CTYPE=zh_CN.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=
请问是什么原因?
使用命令转换为gbk编码
iconv -f utf-8 -t gbk process.php -o back.php
发现 back.php还是utf-8编码,而且文件大小也没变 用的是set fileencoding 查看的
vimrc 设置如下
set fileencodings=utf-8,gbk
locale如下:
LANG=en_US.UTF-8
LC_CTYPE=zh_CN.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=
请问是什么原因?
|
我没用过这东西,但是“用的是set fileencoding 查看的”这句话我不懂,查看怎么也应该是get而不是set吧
|
vi有3个变量
encoding—-encoding是Vim的内部使用编码。
fileencoding—-Vim在保存新建文件时会根据fileencoding的设置编码来保存。如果是打开已有文件,Vim会根据打开文件时所识别的编码来保存,除非在保存时重新设置fileencoding。
termencoding—-该选项代表输出到客户终端(Term)采用的编码类型。
fileencodings:Vim在打开文件时会根据fileencodings选项来识别文件编码,fileencodings可以同时设置多个编码,Vim会根据设置的顺序来猜测所打开文件的编码。
这个命令根本就不是查看吗???
我搜了一下,有一个程序可以执行你要的东西。
http://bloodwolf.javaeye.com/blog/553016
你直接yum install enca就搞定了
encoding—-encoding是Vim的内部使用编码。
fileencoding—-Vim在保存新建文件时会根据fileencoding的设置编码来保存。如果是打开已有文件,Vim会根据打开文件时所识别的编码来保存,除非在保存时重新设置fileencoding。
termencoding—-该选项代表输出到客户终端(Term)采用的编码类型。
fileencodings:Vim在打开文件时会根据fileencodings选项来识别文件编码,fileencodings可以同时设置多个编码,Vim会根据设置的顺序来猜测所打开文件的编码。
这个命令根本就不是查看吗???
我搜了一下,有一个程序可以执行你要的东西。
http://bloodwolf.javaeye.com/blog/553016
你直接yum install enca就搞定了