VB/VBSCRIPT均使用UNICODE(中英文字符都用2字节),VFP使用DBCS(中文用2字节,英文用1字节).在VFP中可以直接读入文件到字符串变量(DBCS与文件一致),可传递到VB中时,VB会自动变成UNICODE了,这样变量就无法用BinaryWrite输出了.
请问如何使得系统不自动转换(好像不可能),或者如何把UNICODE转换回来?STRCONV函数好像也不行.
由于二进制文件不是普通的文字,转换成UNICODE后的字符串很难转换回来(实在不知道转化规律).
一种办法是先保存成文件,再用VB把文件读入,读入的办法好像有用Adodb.Stream与byte数组等方法.实在没办法,也只能用这种笨的办法了.该死的比尔该死,非非常讨厌UNICODE,对于普通中英文文字的处理倒方便了,可对于二进制文字/字符简直太麻烦了.竟然只有UNICODE字符串.本来UNICODE的目的是专门针对东方国家而定义的,事实上不知是好事还是坏事.我讨厌死UNICODE了.要不是UNICODE,无组件上载程序也就不用这么麻烦了(我不懂,猜的,对不?).问题总结:
1.如何把UNICODE转换为DBCS?
2.如何用BYTE数组解决问题?
3.有关UNICODE与DBCS的进一步讨论.UP有分,分不够,ASP版中还有