【请问版主和高手】windows二进制存的中文资料文件,在linux下用二进制方式读取乱码,谢谢
【请教版主和高手】windows二进制存的中文资料文件,在linux下用二进制方式读取乱码,多谢!
我在windows下做了一个资料文件,类似分词系统的词库,用二进制的方式存盘的,linux下用二进制的方式读取该文件时候,发现全是乱码,请问原因?
是不是编码问题?
如果通过编程来解决该问题?
多谢多谢
------解决方案--------------------
可能是2进制本身的原因。
尝试在程序中2进制方式读取后输出,
看看输出是否正确 ~
因为2进制读写文件,
不考虑字符意义,
只读写2进制串,
可能文件打开来看的话是乱码的 ~
------解决方案--------------------
Linux显示用的是UTF-8,而Windows下用的是GBK,GBK中文2字节,UTF-8中文在3字节区,
所以不可能正常显示。
解决方法是:
1、输出的时候,可以用iconv()把编码转成UTF-8再输出。
2、可以写个程序,把数据文件转成UTF-8格式。
我在windows下做了一个资料文件,类似分词系统的词库,用二进制的方式存盘的,linux下用二进制的方式读取该文件时候,发现全是乱码,请问原因?
是不是编码问题?
如果通过编程来解决该问题?
多谢多谢
------解决方案--------------------
可能是2进制本身的原因。
尝试在程序中2进制方式读取后输出,
看看输出是否正确 ~
因为2进制读写文件,
不考虑字符意义,
只读写2进制串,
可能文件打开来看的话是乱码的 ~
------解决方案--------------------
Linux显示用的是UTF-8,而Windows下用的是GBK,GBK中文2字节,UTF-8中文在3字节区,
所以不可能正常显示。
解决方法是:
1、输出的时候,可以用iconv()把编码转成UTF-8再输出。
2、可以写个程序,把数据文件转成UTF-8格式。