登录 | 实名认证,暂停注册 | 在线情况 | 搜索 | 帮助
茗香茶楼百家争茗技术交流Adodb.Stream使用说明
    
 
Adodb.Stream使用说明
发起人:孙帅  回复数:0  浏览数:19981  最后更新:2009/12/31 11:17:19 by 孙帅

选择查看 搜索更多相关主题  帖子排序:
2009/12/31 11:17:19
孙帅





中级茶艺师

角  色:茶楼经理
发 帖 数:527
经 验 值:1008
注册时间:2008/7/11
Adodb.Stream使用说明

组件:"Adodb.Stream"有下列方法:
Cancel 方法
使用方法:
Object.Cancel
说明:取消执行挂起的异步 Execute 或 Open 方法的调用。
Close 方法
使用方法:
Object.Close
说明:关闭对像。
CopyTo 方法
使用方法:
Object.CopyTo(destStream,[CharNumber])
说明:将对像的数据复制,destStream指向要复制的对像,CharNumber为可选参数,指要复制的字节数,不选为全部复制。
Flush 方法
使用方法:
Object.Flush
说明:立即发送缓冲区中的输出。如果在ASP页上调用Flush方法,则服务器将响应该页上保持活动的请求。
LoadFromFile 方法
使用方法:
Object.LoadFromFile(FileName)
说明:将FileName指定的文件装入对像中,参数FileName为指定的用户名。
Open 方法
使用方法:
Object.Open(Source,[Mode],[Options],[UserName],[Password])
说明:打开对像。
参数说明:
1、Sourece 对像源,可不指定。
2、Mode 指定打开模式,可不指定,可选参数如下:
adModeRead =1 (只读)
adModeReadWrite =3 (读写)
adModeRecursive =4194304 (递归)
adModeShareDenyNone =16
adModeShareDenyRead =4
adModeShareDenyWrite =8
adModeShareExclusive =12
adModeUnknown =0
adModeWrite =2 (只写)
3、Options 指定打开的选项,可不指定,可选参数如下:
adOpenStreamAsync =1
adOpenStreamFromRecord =4
adOpenStreamUnspecified=-1
4、UserName 指定用户名,可不指定。
5、Password 指定用户名的密码。
Read 方法
使用方法:
Object.Read(Numbytes)
说明:读取指定长度的二进制内容。
参数说明:Numbytes指定的要读取的长度,不指定则读取全部。
ReadText 方法
使用方法:
Object.ReadText(NumChars)
说明:读取指定长度的文本。
参数说明:NumChars指定的要读取的长度,不指定则读取全部。
SaveToFile 方法
使用方法:
Object.SaveToFile(FileName,[Options])
说明:将对像的内容写到FileName指定的文件中。
参数说明:FileName指定的文件。
Options 存取的选项,可不指定,可选参数如下:
adSaveCreateNotExist =1
adSaveCreateOverWrite =2
SetEOS 方法
使用方法:
Object.setEOS()
说明:将当前位置设置为记录流的末尾[EOS]。这个方法也可以用来更新EOS属性。
SkipLine 方法
使用方法:
Object.SkipLine()
说明:读取文件时,跳过下一行。
Write 方法
使用方法:
Object.Write(Buffer)
说明:将指定的数据装入对像中。
参数说明:Buffer 为指定的要写入的内容。
WriteText 方法
使用方法:
Object.Write(Data,[Options])
说明:将指定的文本数据装入对像中。
参数说明:Data 为指定的要写入的内容。
Options 写入的选项,可不指定,可选参数如下:
adWriteChar =0
adWriteLine =1

组件有下列属性:
Charset
EOS 返回对像内数据是否为空。

LineSeparator 指定换行格式,可选参数有:
adCR =13
adCRLF =-1
adLF =10

Mode 指定或返加模式。

Position 指定或返加对像内数据的当前指针。

Size 返回对像内数据的大小。

State 返加对像状态是否打开。

Type 指定或返回的数据类型,可选参数为:
adTypeBinary =1 (返回二进制)
adTypeText =2 (返回文本)

应用实例:

使用adodb.stream的地方很多,这里只讲一讲使用adodb.stream组件替代FSO实现读取文件的方法(网上流行的一些无组件上传程序全部基于这个写成的)。
1   On Error Resume Next
2   Set stream=Server.CreateObject("Adodb.Stream")
3   If Err.Number=-2147221005 Then 
4        Response.Write "<div align='center'>非常遗憾,您的主机不支持ADODB.Stream,不能使用本程序</div>"
5        Err.Clear
6        Response.End
7   End If
8   stream.type=2
9   stream.mode=3
10 stream.open
11 dim filepath
12 filepath="a.txt"
13 stream.LoadFromFile Server.Mappath(filepath)
14 If Err.Number<>0 Then
15     Response.Write "<div align='center'>文件<font color='#ff0000'>"&Filepath&"</font>无法被打开,请检查是否存在!</font></div>"
16     Err.Clear
17    Response.End
18 End If
19 stream.Charset="gb_2312"
20 stream.position=2
21 dim loadfile
22 loadfile=steam.readtext
23 stream.close
24 set stream=nothing
到这里读出的工作就完成了。下面来一句一句的解释:
第一句:在遇到错误的时候假定到下一行,也就是如果错误不中断程序,从下一句继续执行。
第二句:创建stream对象。
3-7句:进行错误判断,可以不写。
8-9句:分别设置stream对象,返回数据的类型和打开模式。
type属性:设置stream对象返回的数据类型。“1”返回二进制,“2”返回文本。
mode属性:打开模式。“1”只读,“2”只写,“3”读写。还有其它一些值,这里就不写了。
10句:打开对象。只有打开对象,以后的方法如loadFromFile才能使用。
11-13句:使用loadFromFile,将文件“a.txt”里的内容读入stream对象里(注意是读入这个对象中,并没有另开一个变量空间)。
14-18句:错误判断。
19句:Charset设置返回数据类型的编码格式,这里设的是简体中文。
20句:Position设置文件读取的当前指针位置,也就是当前指向的是第几个字符。
21-22句:使用readtext的方法将对象里的内容(就是先前用LOADFROMFILE读进来的内容)写入loadfile变量。
23-24句:关闭和销毁对象。

当然,这只是读取。
要想将其内容写入一个文件,可以使用savetofile(filename,[adsavecreatenotexist|adsavecreateoverwrite])
要想往其内容里写入新内容,可以使用write(buffer)和writetext(data,[adwritechar|adwriteline])
将一个对象的内容复制到另一个对象里,可以使用Object.CopyTo(destStream,[CharNumber])。其中destStream为另一对象,charnumber为要复制文件的大小(字符数),省略该参数即为全部复制。

祝福 CCTV5在线直播 你是哪个公主 生日礼物 繁体字转换 阿拉丁神灯 免费领养QQ宠物猪 爱的烟花 我心永恒
用户在线信息
当前查看此主题的会员: 1 人。其中注册用户 0 人,访客 1 人。


  • 关于本站 版权声明 联系本站 意见建议 大事记
    Powered by BBSXP 2008 MSSQL © 1998-2024 Yuzi.Net
  • Processed in 00.66 second(s)
    Server Time 2024/11/22 22:33:33