分页: 1 / 2

文本内容编码转换

发表于 : 2008-06-30 21:25
RegentW
我有几个10MB左右的文本文件,原来是Win下的GB2312,但在ubuntu下用gedit总是打不开,选什么编码都不行,所以就

代码: 全选

iconv -f GB2312 -t UTF-8 RMRB1.TXT -o RMRB1_utf8.TXT
但只向目标文件正确输出了一小部分,然后就报出错,信息是“iconv: 3903位置的非法输入序列”,请问这是什么意思啊

发表于 : 2008-06-30 21:27
BigSnake.NET
用 GB18030

发表于 : 2008-06-30 21:36
RegentW
BigSnake.NET 写了:用 GB18030
效果是一样的 :roll:

发表于 : 2008-06-30 21:58
xiooli
加-c参数试试。

发表于 : 2008-06-30 22:05
RegentW
xiooli 写了:加-c参数试试。
忽略非法字符,输出的大小好像是对的,但输出的文件又打不开了

发表于 : 2008-06-30 22:06
BigSnake.NET
RegentW 写了:
xiooli 写了:加-c参数试试。
忽略非法字符,输出的大小好像是对的,但输出的文件又打不开了
干脆用 enconv 试试 ..

发表于 : 2008-06-30 22:17
RegentW
BigSnake.NET 写了:
RegentW 写了:
xiooli 写了:加-c参数试试。
忽略非法字符,输出的大小好像是对的,但输出的文件又打不开了
干脆用 enconv 试试 ..

代码: 全选

$ enca RMRB1.TXT
Unrecognized encoding
$ enconv RMRB1.TXT
enconv: Cannot convert `RMRB1.TXT' from unknown encoding

发表于 : 2008-06-30 22:22
BigSnake.NET
你那个文件编码有问题???

iconv -c 应该可以解决的

发表于 : 2008-06-30 22:29
RegentW
编码没问题啊,在windows下用写字板可以打开,没有错误

发表于 : 2008-07-01 13:33
windwiny
告诉你,用 gvim ,

一看到 gedit 就讨厌

把 set fileencodings=utf-8,ucs-bom,cp936,big5,euc-jp,euc-kr,latin1,default 这行加到 ~/.vimrc 里去,能自动检测文件编码

打开后 :se fe=utf-8 再保存就转成 utf8 了

发表于 : 2008-07-01 14:47
RegentW
:shock:
谢楼上的建议,打开全部是乱码

发表于 : 2008-07-01 14:54
BigSnake.NET

代码: 全选

iconv -f GB18030 -t UTF-8 RMRB1.TXT -c
看出来的是什么

发表于 : 2008-07-01 15:00
RegentW
BigSnake.NET 写了:

代码: 全选

iconv -f GB18030 -t UTF-8 RMRB1.TXT -c
看出来的是什么
这个能正确显示文件内容,谢BigSnake :)
接下来我试了

代码: 全选

$ iconv -f GB18030 -t UTF-8 RMRB1.TXT > RMRB1_utf8.TXT -c
输出文件还是打不开

发表于 : 2008-07-01 15:01
BigSnake.NET
-c 放前面.. > RMRB1_utf8.TXT 放最后

然后 enca RMRB1_utf8.TXT 看输出什么

发表于 : 2008-07-01 15:05
RegentW

代码: 全选

$ iconv -c -f GB18030 -t UTF-8 RMRB1.TXT -o RMRB1_utf8.TXT
$ enca RMRB1_utf8.TXT 
Universal transformation format 8 bits; UTF-8
  Surrounded by/intermixed with non-text data