ASP中利用ADODB.STREAM对象将字节流转换为字符流
类别: ASP教程
\'--------------------------------------------------------------------
\' 二进制转字符串
\'
\' 入口参数:字节流
\' 函数返回:字符串
\' 利用 ADODB.Stream 对象,速度比原来的字符替换法快了n倍,n≈30!!)
\'--------------------------------------------------------------------
\'下面的常量是函数用到的,因为我在函数外面已经定义过了,因此不在这里重复定义
\'---- StreamTypeEnum Values ----
\'Const adTypeBinary = 1
\'Const adTypeText = 2
Function Bytes2bStr(vin)
Dim BytesStream,StringReturn
Set BytesStream = Server.CreateObject("ADODB.Stream") \'建立一个流对象
With BytesStream
.Type = adTypeText \'设置流对象的类型为字符流
.Open \'打开流对象
.WriteText vin \'把vin写入流对象中
.Position = 0 \'设置流对象的起始位置是0,也就是开头
\'这个操作必须做,为什么我也不知道,失败了n次得出的结论
\'如果不进行这个操作,下面设置Charset属性就出错
.Charset = "GB2312" \'设置流对象的编码方式为GB2312
.Position = 2 \'设置流对象的起始位置是2(过滤掉开始的一个控制字符
\'这个控制字符是WriteText方法按默认属性Charset="Unicode"
\'读入数据的时候自动加到数据开头的,字符的值是FF3F
\'这个控制字符占2字节,所以Position设置为2
\'表示略过2个字节,下面的ReadText方法从Position开始读数据
StringReturn = .ReadText \'把流对象的内容保存在StringReturn变量中
.close \'关闭流对象
End With
Set BytesStream = Nothing \'销毁流对象
Bytes2bStr = StringReturn
End Function
\' 二进制转字符串
\'
\' 入口参数:字节流
\' 函数返回:字符串
\' 利用 ADODB.Stream 对象,速度比原来的字符替换法快了n倍,n≈30!!)
\'--------------------------------------------------------------------
\'下面的常量是函数用到的,因为我在函数外面已经定义过了,因此不在这里重复定义
\'---- StreamTypeEnum Values ----
\'Const adTypeBinary = 1
\'Const adTypeText = 2
Function Bytes2bStr(vin)
Dim BytesStream,StringReturn
Set BytesStream = Server.CreateObject("ADODB.Stream") \'建立一个流对象
With BytesStream
.Type = adTypeText \'设置流对象的类型为字符流
.Open \'打开流对象
.WriteText vin \'把vin写入流对象中
.Position = 0 \'设置流对象的起始位置是0,也就是开头
\'这个操作必须做,为什么我也不知道,失败了n次得出的结论
\'如果不进行这个操作,下面设置Charset属性就出错
.Charset = "GB2312" \'设置流对象的编码方式为GB2312
.Position = 2 \'设置流对象的起始位置是2(过滤掉开始的一个控制字符
\'这个控制字符是WriteText方法按默认属性Charset="Unicode"
\'读入数据的时候自动加到数据开头的,字符的值是FF3F
\'这个控制字符占2字节,所以Position设置为2
\'表示略过2个字节,下面的ReadText方法从Position开始读数据
StringReturn = .ReadText \'把流对象的内容保存在StringReturn变量中
.close \'关闭流对象
End With
Set BytesStream = Nothing \'销毁流对象
Bytes2bStr = StringReturn
End Function
- 上一篇: 利用存储过程进行组合查询
- 下一篇: GB与BIG5内码转换COM原代码
-= 资 源 教 程 =-
文 章 搜 索