二进字格式转换成字符串的一个算法,用ADODB.Stream实现!如果可以不用临时文件可以解决吗?
'---- StreamTypeEnum Values ----
Const adTypeBinary = 1
Const adTypeText = 2
'---- SaveOptionsEnum Values ----
Const adSaveCreateNotExist = 1
Const adSaveCreateOverWrite = 2
Function Bytes2bStr(vin)
Dim BytesStream,TempFile,StringReturn
TempFile = Server.MapPath("temp.txt") '定义一个临时文件
Set BytesStream = Server.CreateObject("ADODB.Stream") '建立一个流对象
With BytesStream
.Type = adTypeBinary '设置流对象的类型为字节流
.Open '打开流对象
.Write vin '把vin写入流对象中
.SaveToFile TempFile,adSaveCreateOverWrite '把流对象的内容写入临时文件,如文件存在就覆盖
.Close '关闭流对象
.Type = adTypeText '设置流对象的类型为字符流
.Charset = "GB2312" '设置流对象的编码方式为GB2312
.Open '打开流对象
.LoadFromFile TempFile '按指定的编码方式从刚才的临时文件中读取内容到流对象
StringReturn = .ReadText '把流对象的内容保存在StringReturn变量中
.close '关闭流对象
End With
Set BytesStream = Nothing '销毁流对象
Bytes2bStr = StringReturn
End Function