当前位置: 技术问答>linux和unix
iconv,从UTF8到GBK(//IGNORE),失败!
来源: 互联网 发布时间:2016-07-18
本文导语: 对一个UTF8的文件(pages0), 使用iconv命令,转换到GBK的文件(pages0_Convert), 运行一部分后,报错退出。 使用的命令如下: [...]#iconv -f UTF-8//IGNORE -t GBK//IGNORE pages0 > pages0_Convert 运行后,报错退出: iconv:未知...
对一个UTF8的文件(pages0),
使用iconv命令,转换到GBK的文件(pages0_Convert),
运行一部分后,报错退出。
使用的命令如下:
[...]#iconv -f UTF-8//IGNORE -t GBK//IGNORE pages0 > pages0_Convert
运行后,报错退出:
iconv:未知 17668 处的非法输入序列
然后,我用sed命令查看17668行前后3行的信息如下:
[...]# sed "17667, 17669p" -n pages0
{
var mc = $('ShopGMap');var mcp = $('ShopGMapp');
var shDiv = new Element('div').setStyle('display','none').inject(document.body);
上面的中间一行为17668行。
另外,
在别人的机器上,能够成功运行上述iconv命令,
为什么在我的机器上运行失败呢?
我在本机运行locale命令如下:
[...]# locale
LANG=zh_CN
LC_CTYPE="zh_CN"
LC_NUMERIC="zh_CN"
LC_TIME="zh_CN"
LC_COLLATE="zh_CN"
LC_MONETARY="zh_CN"
LC_MESSAGES="zh_CN"
LC_PAPER="zh_CN"
LC_NAME="zh_CN"
LC_ADDRESS="zh_CN"
LC_TELEPHONE="zh_CN"
LC_MEASUREMENT="zh_CN"
LC_IDENTIFICATION="zh_CN"
LC_ALL=
使用iconv命令,转换到GBK的文件(pages0_Convert),
运行一部分后,报错退出。
使用的命令如下:
[...]#iconv -f UTF-8//IGNORE -t GBK//IGNORE pages0 > pages0_Convert
运行后,报错退出:
iconv:未知 17668 处的非法输入序列
然后,我用sed命令查看17668行前后3行的信息如下:
[...]# sed "17667, 17669p" -n pages0
{
var mc = $('ShopGMap');var mcp = $('ShopGMapp');
var shDiv = new Element('div').setStyle('display','none').inject(document.body);
上面的中间一行为17668行。
另外,
在别人的机器上,能够成功运行上述iconv命令,
为什么在我的机器上运行失败呢?
我在本机运行locale命令如下:
[...]# locale
LANG=zh_CN
LC_CTYPE="zh_CN"
LC_NUMERIC="zh_CN"
LC_TIME="zh_CN"
LC_COLLATE="zh_CN"
LC_MONETARY="zh_CN"
LC_MESSAGES="zh_CN"
LC_PAPER="zh_CN"
LC_NAME="zh_CN"
LC_ADDRESS="zh_CN"
LC_TELEPHONE="zh_CN"
LC_MEASUREMENT="zh_CN"
LC_IDENTIFICATION="zh_CN"
LC_ALL=
|
加个 -c 强制转换 看看
|
问题应该出在编码上了。
|
确认你的文件是不是utf-8编码的。
使用二进制方式打开文件,看文件最前面是否EF BB BF,如果是就为utf-8。
或者使用记事本打开文件,然后保存为utf-8格式,最后使用iconv转换试试看。
使用二进制方式打开文件,看文件最前面是否EF BB BF,如果是就为utf-8。
或者使用记事本打开文件,然后保存为utf-8格式,最后使用iconv转换试试看。
|
非utf-8编码?
|
|
hao
|
他们说这儿有好东东 我就来了。。。
|
他们说这儿有好东东 我就来了。。。
|
但是不会
|
(^o^)/~aisadasd