pb字符转换成utf-8解决方案
pb字符转换成utf-8
求把字符转换成UTF-8的代码。我现在用API做了,对于汉字个数是偶数没问题,但当汉字个数是奇数最后一个字就是乱码。
------解决方案--------------------
是奇数时最后加个汉字的空格,补齐,转换后再去掉
------解决方案--------------------
版主的机巧变通之道,佩服!
------解决方案--------------------
可以用adosteam来实现
用adosteam
integer li_rtn
OLEObject ole_ADOStream
ole_ADOStream = CREATE OLEObject
li_rtn = ole_ADOStream.ConnectToNewObject("ADODB.Stream")
ole_ADOStream.Type = 1 //二进制数据Binary
ole_ADOStream.Mode =3 //具有读/写权限
ole_ADOStream.Open()
ole_ADOStream.LoadFromFile("c:\1.txt")
ole_ADOStream.Position = 0 //Position为0才能设置Charset
ole_ADOStream.Type = 2 //文本数据
ole_ADOStream.Charset = "UTF-8"
ole_ADOStream.SaveToFile("c:\2.txt",2)
ole_ADOStream.Close()
destroy ole_ADOStream
求把字符转换成UTF-8的代码。我现在用API做了,对于汉字个数是偶数没问题,但当汉字个数是奇数最后一个字就是乱码。
------解决方案--------------------
是奇数时最后加个汉字的空格,补齐,转换后再去掉
------解决方案--------------------
版主的机巧变通之道,佩服!
------解决方案--------------------
可以用adosteam来实现
用adosteam
integer li_rtn
OLEObject ole_ADOStream
ole_ADOStream = CREATE OLEObject
li_rtn = ole_ADOStream.ConnectToNewObject("ADODB.Stream")
ole_ADOStream.Type = 1 //二进制数据Binary
ole_ADOStream.Mode =3 //具有读/写权限
ole_ADOStream.Open()
ole_ADOStream.LoadFromFile("c:\1.txt")
ole_ADOStream.Position = 0 //Position为0才能设置Charset
ole_ADOStream.Type = 2 //文本数据
ole_ADOStream.Charset = "UTF-8"
ole_ADOStream.SaveToFile("c:\2.txt",2)
ole_ADOStream.Close()
destroy ole_ADOStream