logo

哈达波斯网|专注网站

ASP

asp字符串二进制流互转

ASP  2020/9/17 10:36:00  管理员  
Public  Function Bytes2Str(vin,charset)
        Dim ms,strRet
        Set ms = Server.CreateObject("ADODB.Stream")    '建立流对象
        ms.Type = 1             ' Binary
        ms.Open                    
        ms.Write vin            '把vin写入流对象中
        ms.Position = 0         '设置流对象的起始位置是0 以设置Charset属性
        ms.Type = 2              'Text
        ms.Charset = charset    '设置流对象的编码方式为 charset
        strRet = ms.ReadText    '取字符流
        ms.close                '关闭流对象
        Set ms = nothing
        Bytes2Str = strRet
End Function
Public Function Str2Bytes(str,charset)
        Dim ms,strRet
        If lcase(charset)="utf-8" Then
           sPos = 3
        ElseIf lcase(charset)="unicode" Then
           sPos = 2
        Else
           sPos = 0
        End If
        Set ms = CreateObject("ADODB.Stream")    '建立流对象
        ms.Type = 2             ' Text
        ms.Charset = charset    '设置流对象的编码方式为 charset
        ms.Open                    
        ms.WriteText str            '把str写入流对象中
        ms.Position = 0         '设置流对象的起始位置是0 以设置Charset属性
        ms.Type = 1              'Binary
        ms.Position = sPos                '跳过0-1字节,不同的charset需跳过的位置不同
        vout = ms.Read(ms.Size)    '取字符流
        ms.close                '关闭流对象
        Set ms = nothing
        Str2Bytes = vout
End Function


response.Write(Str2Bytes("ABC","utf-8"))
response.Write(Bytes2Str(Str2Bytes("ABC","utf-8"),"utf-8"))


上一篇:base64转图片下一篇:asp获得磁盘信息
网站首页  | 最新公告  | 漏洞修补  | 网站模板  | 知识文档  | 与我联系
Copyright © 2015 jlasp.com All Rights Reserved.
哈达波斯网|专注网站 版权所有
地址:吉林省吉林市昌邑区 联系QQ:383612004 联系人:董先生
未经本站授权,禁止复制或建立镜像,内容仅用于学习参考!
ICP备案号:吉ICP备15000891号-1 | 

吉公网安备 22020202000301号