如何用VB6读取utf-8格式保存的文本
ccton 2005-05-04 07:48:33 很简单,比如随便写几个汉字,然后用记事本保存为utf-8格式,跟着用VB去读出来,msgbox一下就可以了。
在VB中用FileSystemObject去读的话肯定不行,数据被破坏了,你只能得到乱码。
只能用open+get用二进制读到byte数组里,现在开始就讨厌了。
用strconv函数没有办法把这个字节数组正确地转成字符串。strconv(str/byte_array, format, localeId)。format是指望不上了,想想LocaleId是不是能用一下呀——也TNND的不行。其实确省的localeID的结果无非就是用936简体中文代码页进行转换,那微软为什么就不能给个参数用65001(utf-8)代码页转换就完事了?据说VB.NET可以,但是不是为了干这个俺还得全新地把.NET学一番?
谁知道有现成的代码可以用的?
根据VB糟糕的处理byte数组的能力,我能想到的只能是FOR NEXT循环去处理那个数组里的每一个字节了,那效率可真的快哦。。。——跟蜗牛比的话!
而且VB里好象还不支持位运算符,感谢M$,我折腾了一天,最后就想骂人了。。。