日期:2014-05-18  浏览次数:20743 次

读iPhone文件系统出现的乱码问题
本人最近在用.Net做一个WinForm程序,类似于91助手,只针对iPhone,但在读取iPhone的文件系统的时候,中文的文件夹和文件出现乱码,后来查了下,是因为iPhone使用的是 UTF8编码,而windows我使用了一个方法,代码如下:

Encoding encod_65001 = Encoding.GetEncoding(65001);//即UTF8编码
Encoding encod_936 = Encoding.GetEncoding(936);//即GB2312编码

byte[] byte_936_Text = encod_936.GetBytes(buffer);// string 类型的 buffer是从iPhone读出的字符串

String buffer_65001_Text = encod_65001.GetString(byte_936_Text);

buffer_65001_Text的值即是转换后的正确的中文,但实际中,部分乱码可以转换正确,但仍有接近一半的乱码,求教高人怎么解决此乱码问题?诚惶诚恐

------解决方案--------------------
Encoding.Default.GetString(Encoding.UTF8.GetBytes(""))
------解决方案--------------------
str = Encoding.UTF8.GetString(Encoding.Default.GetBytes(str));
------解决方案--------------------
探讨

9楼的方法和我目前的效果一样,部分正确,部分还是乱码,我希望的结果是中文全部显示正确