今天从同事的ubuntu系统里拷贝来一个C文件,在windows系统下用source insight看,发现中文注释出现乱码,我以为是我的source insight的问题(不得不说source insight在编码问题上有待提高),然后用txt和ultraedit打开后,注释依然出现乱码。尼玛,代码是别人写的,没有注释看起来会是多么吃力。
什么原因呢,在网上看了下原因,都说要编码格式的问题,我在windows下把文件转成各种编码格式,还是没用。然后把文件放在我的ubuntu上,中文没有乱码,想想还是得在ubuntu上转格式。
有二种工具可供我们使用,iconv和enca。二种都试了一下,但是都出错了,enca上说是解析不了源文件的编码格式,唉,只能另辟蹊径。再去看看论坛上怎么说的吧,然后就找到下面一个讨论的,用iconv的参数-c,忽略掉。试了一下,还真行,转出来的文件在windows下用source insight中文注释没有乱码了。我的命令如下:
iconv -f -t GB2312 -c tradio.c > tradio1.c
不懂的参数在ubuntu下help看看。
另外,在我解决了编码问题后,我的同事说用notepad++也可以,然后试试看看,在nodepad++上修改一下格式里面的编码方式中文注释没有乱码了,比我上面的方法快多了。