51Testing软件测试论坛

标题: QTP脚本中的字符变成了乱码 [打印本页]

作者: Mr.Lee    时间: 2010-7-21 10:41
标题: QTP脚本中的字符变成了乱码
各位:
我用附件中的vbs执行修改了qtp的脚本后,脚本中的中文字符变成了乱码?有人遇到过该问题吗?[attach]63890[/attach]
作者: skyzhu    时间: 2010-7-21 10:57
文件编码的关系,最后保存的默认是ANSI    , 脚本原来的是 UTF-8
所以中文就乱了
作者: Mr.Lee    时间: 2010-7-21 11:03
skyzhu :
我知道relpace脚本重写了qtp脚本同时修改了编码格式,那我该怎么修改才能保持编码是UTF-8 呢?
作者: skyzhu    时间: 2010-7-21 11:41
用 CreateObject("Adodb.Stream")
读写转换编码试试
作者: Mr.Lee    时间: 2010-7-21 14:07
读写转换编码?skyzhu, 你能具体说一下工作原理吗?我这里没有什么头绪
作者: skyzhu    时间: 2010-7-21 14:57
例子是gb2312读取,utf-8写入,自己看着改吧

File = "D:\123.txt"
Code1 = "gb2312"
Code2 = "utf-8"

WriteToFile File, ReadFile(File, Code1), Code2

Function ReadFile(Filepath, CharSet)   
    Dim Str   
    Set stm = CreateObject("Adodb.Stream")   
    stm.Type = 2   
    stm.mode = 3   
    stm.charset = CharSet  
    stm.Open  
    stm.loadfromfile Filepath   
    Str = stm.readtext
    stm.Close  
    Set stm = Nothing  
    ReadFile = Str   
End Function  


Function WriteToFile (Filepath, Str, CharSet)   
    Set stm = CreateObject("Adodb.Stream")   
    stm.Type = 2   
    stm.mode = 3   
    stm.charset = CharSet  
    stm.Open  
    stm.WriteText Str   
    stm.SaveToFile Filepath, 2   
    stm.flush  
    stm.Close  
    Set stm = Nothing  
End Function




欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2