Basic家族vb6miniVBSwpsHome.cn作者成长之路轻.增值

(VBS日记.A013)~VBS对象之ADO-ADODB.Stream对象

ADODB.Stream对象用于读写文本数据和二进制数据

主要用途:使用其Charset属性转换文本文件的编码
和Msxml2.XMLHTTP对象一起用于下载文件
将图像、影音等非文本文件转换为二进制数据,以保存到数据库中

CreateObject(“ADODB.Stream”)ADODB.Stream对象有8个属性14个方法0个事件

(1)属性:
Charset 文本数据的字符集。类型:String
EOS 只读属性。光标是否在文末。类型:Boolean
LineSeparator 分行符。类型:Long
Mode 读写权限。类型:Long
Position 光标位置。类型:Long
Size 只读属性。数据的字节数。类型:Long
State 只读属性。对象的状态。类型:Long
Type 数据类型。类型:Long

(2)方法:
Cancel 终止Open()方法的异步操作
Close 关闭对象
CopyTo 从光标位置复制数据到另一个Stream对象
Flush 把数据发送到远程对象
LoadFromFile 加载文件内容
Open 打开对象
Read 读取二进制数据
ReadText 读取文本数据
SaveToFile 将数据保存到指定文件
SetEOS 设置当前光标位置为数据的结尾
SkipLine 跳过一行文本数据
Stat 读取对象的信息
Write 写入二进制数据
WriteText 写入文本数据示例

(3)示例1:
‘示例:和Msxml2.XMLHTTP对象一起用于下载文件
Dim oStream, s

Const FILE = “d:\bd_logo01.png”

s = “https://www.baidu.com/img/bd_logo01.png”
With CreateObject(“Msxml2.XMLHTTP”)
.Open “GET”, s, False
.Send()
s = .ResponseBody
End With

Set oStream = CreateObject(“ADODB.Stream”)
oStream.Type = 1 ‘adTypeBinary
oStream.Mode = 3 ‘adModeReadWrite
oStream.Open()
oStream.Write s
oStream.SaveToFile FILE, 2 ‘adSaveCreateOverWrite
oStream.Close()

‘打开文件夹并选中指定的文件
CreateObject(“WScript.Shell”).Run “explorer.exe /select,” & FILE

(4)示例2:
‘示例:转换文本文件的编码
Dim oStream, file1, file2, s
file1 = “1.txt” ‘源文件
file2 = “2.txt” ‘目标文件

Set oStream = CreateObject(“ADODB.Stream”)
oStream.Type = 2 ‘adTypeText
oStream.Mode = 3 ‘adModeReadWrite
oStream.Charset = “gb2312” ‘原编码
oStream.Open()
oStream.LoadFromFile file1
s = oStream.ReadText()
oStream.Close()
oStream.Charset = “utf-8” ‘目标编码
oStream.Open()
oStream.WriteText s
oStream.SaveToFile file2, 2 ‘adSaveCreateOverWrite
oStream.Close()

MsgBox “ok”

Views: 66

Hi, I’m vbsgirl

办公职员