标题: vbs 中 如何把一个字符串设为变量?
[打印本页]
作者: wuhanbin
时间: 2009-8-14 07:01
标题: vbs 中 如何把一个字符串设为变量?
一个vbs脚本,function后输出一个字符串,现在我只能MSGBOX这个function,那如何把这个function输出的字符串设为变量呢?谢谢啦!
作者: qinchun36
时间: 2009-8-14 07:17
什么意思 ?
说具体点,给出你的例子也行
作者: wuhanbin
时间: 2009-8-14 07:53
Set http = CreateObject("Msxml2.XMLHTTP")
http.open "POST", "http://m.renren.com/", false
http.send
msgbox (BytesToBstr(Http.responseBody,"UTF-8"))
Function BytesToBstr(body,Cset)
dim objstream
set objstream = CreateObject("adodb.stream")
objstream.Type = 1
objstream.Mode = 3
objstream.Open
objstream.Write body
objstream.Position = 0
objstream.Type = 2
objstream.Charset = Cset
BytesToBstr = objstream.ReadText
objstream.Close
set objstream = nothing
End Function
这段代码能通过msgbox (BytesToBstr(Http.responseBody,"UTF-8"))来输出字符串,即(m.renren.com的网页源代码),那请问如何把(BytesToBstr(Http.responseBody,"UTF-8"))定义为变量a,让我能够通过msgbox a,来实现msgbox (BytesToBstr(Http.responseBody,"UTF-8"))一样的功能?谢谢!
作者: slore
时间: 2009-8-14 10:55
a=(BytesToBstr(Http.responseBody,"UTF-8"))
msgbox a
作者: qinchun36
时间: 2009-8-14 12:15
我无法实现你说的这种功能!
msgbox 后面如果跟一个字符串的话肯定每次输出就不会变的了, "msgbox 字符串变量“ 显示的肯定就是 "字符串变量" 的值,就算它代表一个函数或者命令也不会执行,你可以尝试换种方式,利用 execute 函数来执行显示:
CODE: [Copy to clipboard]
a = "msgbox BytesToBstr(Http.responseBody,""UTF-8"")"
execute a
顺便说以下,获源代码为什么不用 responseText 属性呢 ?
CODE: [Copy to clipboard]
Set http = CreateObject("Msxml2.XMLHTTP")
http.open "POST", "http://m.renren.com/", false
http.send
msgbox http.responseText
作者: everest79
时间: 2009-8-16 09:31
CODE: [Copy to clipboard]
msgbox string
a=string
msgbox a
function string()
string="test..."
end function