zoukankan      html  css  js  c++  java
  • VBS字符串在不同编码之间的转换

    vbscript, vbs 字符串在不同编码之间的转换,包括 ISO-8859-1,UTF-8,GBK,GB2312,GB18030之间的转换.

    Const adTypeBinary = 1
    Const adTypeText = 2
    
    ' accept a string and convert it to Bytes array in the selected Charset
    Function StringToBytes(Str,Charset)
      Dim Stream : Set Stream = CreateObject("ADODB.Stream")
      Stream.Type = adTypeText
      Stream.Charset = Charset
      Stream.Open
      Stream.WriteText Str
      Stream.Flush
      Stream.Position = 0
      ' rewind stream and read Bytes
      Stream.Type = adTypeBinary
      StringToBytes= Stream.Read
      Stream.Close
      Set Stream = Nothing
    End Function
    
    ' accept Bytes array and convert it to a string using the selected charset
    Function BytesToString(Bytes, Charset)
      Dim Stream : Set Stream = CreateObject("ADODB.Stream")
      Stream.Charset = Charset
      Stream.Type = adTypeBinary
      Stream.Open
      Stream.Write Bytes
      Stream.Flush
      Stream.Position = 0
      ' rewind stream and read text
      Stream.Type = adTypeText
      BytesToString= Stream.ReadText
      Stream.Close
      Set Stream = Nothing
    End Function
    
    ' This will alter charset of a string from 1-byte charset(as windows-1252)
    ' to another 1-byte charset(as windows-1251)
    Function AlterCharset(Str, FromCharset, ToCharset)
      Dim Bytes
      Bytes = StringToBytes(Str, FromCharset)
      AlterCharset = BytesToString(Bytes, ToCharset)
    End Function

    使用例子:

    dim s1,s2,FromCharset,ToCharset
    s1 = "我的字符串"
    FromCharset = "GB2312"
    ToCharset = "ISO-8859-1"
    s2 = AlterCharset(s1,FromCharset,ToCharset)
    

      

  • 相关阅读:
    Java基础复习(1)
    mybatis中Oracle分页语句的写法
    Spring Security 入门原理及实战
    Java中的基本类型和包装类型区别
    Apache Shiro简单介绍
    linux常用命令介绍
    Spring Cloud的简单介绍
    服务端跳转和客户端跳转
    使用ajax向后台发送请求跳转页面无效的原因
    js css html加载顺序
  • 原文地址:https://www.cnblogs.com/equation/p/15234294.html
Copyright © 2011-2022 走看看