LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
楼主: dove04

怎样可以看出一个文件是什么编码的?EUC-JIS?Big5?GB?

[复制链接]
发表于 2006-8-5 03:16:26 | 显示全部楼层
如果你不想写C程序,也可以写shell脚本。试着用iconv命令把你的文件转换成utf-8,那些有非EUC-JP编码的会报错,这样不就达到目的了吗。
回复 支持 反对

使用道具 举报

发表于 2006-8-5 08:54:11 | 显示全部楼层
只是想知道文件的编码是不?

file 文件名
或者: vim 文件名
打开后,然后 输入 : :set fileencoding
ok, 应该就能看到一些信息了。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2006-8-7 11:48:18 | 显示全部楼层
Post by 黄叶
只是想知道文件的编码是不?

file 文件名
或者: vim 文件名
打开后,然后 输入 : :set fileencoding
ok, 应该就能看到一些信息了。



vim 文件名          不是修改文件嘛
回车之后就会打开文件了
在哪里输入:set fileencoding?


我找到了,但是达不到目的,只会显示“fileencoding=”,用:set fileencodings是用来设置的
回复 支持 反对

使用道具 举报

 楼主| 发表于 2006-8-7 16:52:45 | 显示全部楼层
Post by wxk
如果你不想写C程序,也可以写shell脚本。试着用iconv命令把你的文件转换成utf-8,那些有非EUC-JP编码的会报错,这样不就达到目的了吗。



具体情况是这样的,譬如有一段euc-jp写的文字
不小心用binary方式删除了一半的字符
这样就形成了乱码
文件中同时还包括了英文半角字符,也就是最常见的ASCII或者说ISO-8859
在为数众多的文件中,怎样快速判断哪些文件含有乱码
回复 支持 反对

使用道具 举报

 楼主| 发表于 2006-8-7 16:54:26 | 显示全部楼层
Post by wxk
如果你不想写C程序,也可以写shell脚本。试着用iconv命令把你的文件转换成utf-8,那些有非EUC-JP编码的会报错,这样不就达到目的了吗。



具体情况是这样的,譬如有一段euc-jp写的文字
不小心用binary方式删除了一半的字符
这样就形成了乱码
文件中同时还包括了英文半角字符,也就是最常见的ASCII或者说ISO-8859
在为数众多的文件中,怎样快速判断哪些文件含有乱码
回复 支持 反对

使用道具 举报

 楼主| 发表于 2006-8-7 16:54:30 | 显示全部楼层
Post by wxk
如果你不想写C程序,也可以写shell脚本。试着用iconv命令把你的文件转换成utf-8,那些有非EUC-JP编码的会报错,这样不就达到目的了吗。



具体情况是这样的,譬如有一段euc-jp写的文字
不小心用binary方式删除了一半的字符
这样就形成了乱码
文件中同时还包括了英文半角字符,也就是最常见的ASCII或者说ISO-8859
在为数众多的文件中,怎样快速判断哪些文件含有乱码
回复 支持 反对

使用道具 举报

发表于 2006-8-8 04:35:46 | 显示全部楼层
iconv的用法如下:
    iconv -f EUC-JP -t UTF8 -o name_of_output.txt < name_of_input.txt
你只需要把原文件替换“name_of_input.txt”,输出文件名可以自己定了,就可以了。一旦出现乱码时,转换程序会停止,并报错。试试看看吧,有问题再问吧。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2006-8-8 10:00:35 | 显示全部楼层
Post by wxk
iconv的用法如下:
    iconv -f EUC-JP -t UTF8 -o name_of_output.txt < name_of_input.txt
你只需要把原文件替换“name_of_input.txt”,输出文件名可以自己定了,就可以了。一旦出现乱码时,转换程序会停止,并报错。试试看看吧,有问题再问吧。



这个方法是不错的
能告诉我后面的参数[file...]的最大个数吗?
我考虑能不能一次性后面跟所有的文件名
然后统一输出一个report.txt查找字符串"cannot convert"
回复 支持 反对

使用道具 举报

 楼主| 发表于 2006-8-8 10:06:17 | 显示全部楼层
Post by wxk
iconv的用法如下:
    iconv -f EUC-JP -t UTF8 -o name_of_output.txt < name_of_input.txt
你只需要把原文件替换“name_of_input.txt”,输出文件名可以自己定了,就可以了。一旦出现乱码时,转换程序会停止,并报错。试试看看吧,有问题再问吧。



我看了,[file...]可以使用文件夹形式的,批量可以完成
但是新的问题出现了,有的文件中明明没有乱码的,他也给列出来了
怀疑这个方法的可信程度
回复 支持 反对

使用道具 举报

 楼主| 发表于 2006-8-8 10:07:19 | 显示全部楼层
Post by wxk
iconv的用法如下:
    iconv -f EUC-JP -t UTF8 -o name_of_output.txt < name_of_input.txt
你只需要把原文件替换“name_of_input.txt”,输出文件名可以自己定了,就可以了。一旦出现乱码时,转换程序会停止,并报错。试试看看吧,有问题再问吧。



我看了,[file...]可以使用文件夹形式的,批量可以完成
但是新的问题出现了,有的文件中明明没有乱码的,他也给列出来了
怀疑这个方法的可信程度
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表