基 础 函 数 参 考


StringToBinary

转换字符串为二进制数据.

StringToBinary ( 表达式 [, 标志] )

参 数

表达式 字符串表达式.
标志 [可选参数] 指定二进制数据的编码格式:
  标志 = 1 (默认), 二进制数据为 ANSI 编码
  标志 = 2, 二进制数据为 UTF16 小编码
  标志 = 3, 二进制数据为 UTF16 大编码
  标志 = 4, 二进制数据为 UTF8 编码

返 回 值

返回一个二进制变量.

备 注

None.

相 关 函 数

Binary, BinaryToString, IsBinary, String

函 数 示 例


Example()

Func Example()
    ; 定义用于转换的字符串.
    ; 注:在帮助文件, 甚至在一些编辑器中此字符串可能会显示为 ??.
    ; 这个例子保存为带 BOM 的 UTF-8 编码.  它应该在支持基于 BOM
    ; 代码页转换的编辑器上正确显示.
    Local Const $sString = "Hello - 你好";译注: 此处中文为官方设置,非汉化

    ; 临时变量, 用于存储转换结果. $sBinary 将保存二进制形式的原始字符串,
    ; $sConverted 将保存结果后,
    ; 将其转换回原来的格式.
    Local $sBinary, $sConverted

    ; 原 UTF-8 字符串转换为 ANSI 兼容的二进制字符串.
    $sBinary = StringToBinary($sString)

    ; 转换 ANSI 兼容的二进制字符串成一个字符串.
    $sConverted = BinaryToString($sBinary)

    ; 显示的结果.  需要注意的是最后两个字符会出现 ?? (译注:中文 SCITE 编辑器显示与运行正常)
    ; 因为他们不能代表 ANSI.
    DisplayResults($sString, $sBinary, $sConverted, "ANSI")

    ; 原 UTF-8 字符串转换到 UTF16-LE 二进制字符串.
    $sBinary = StringToBinary($sString, 2)

    ; UTF16-LE 二进制字符串转换成一个字符串.
    $sConverted = BinaryToString($sBinary, 2)

    ; 显示结果.
    DisplayResults($sString, $sBinary, $sConverted, "UTF16-LE")

    ; 原 UTF-8 字符串转换到 UTF16-BE 二进制字符串.
    $sBinary = StringToBinary($sString, 3)

    ; UTF16-BE 二进制字符串转换成一个字符串.
    $sConverted = BinaryToString($sBinary, 3)

    ; 显示结果.
    DisplayResults($sString, $sBinary, $sConverted, "UTF16-BE")

    ; 原 UTF-8 字符串转换到 UTF-8 的二进制字符串.
    $sBinary = StringToBinary($sString, 4)

    ; UTF8 的二进制字符串转换成一个字符串.
    $sConverted = BinaryToString($sBinary, 4)

    ; 显示结果.
    DisplayResults($sString, $sBinary, $sConverted, "UTF8")
EndFunc

; 显示消息的帮助函数格式. 采用下列参数:
; $sOriginal - 转换前的原始字符串.
; $sBinary - 原始字符串已转换为二进制的字符串.
; $sConverted- 转换为二进制后返回的字符串.
; $sConversionType - 用于转换的编码类型名.
Func DisplayResults($sOriginal, $sBinary, $sConverted, $sConversionType)
    MsgBox(4096, "", "原型:" & @CRLF & $sOriginal & @CRLF & @CRLF & "二进制:" & @CRLF & $sBinary & @CRLF & @CRLF & $sConversionType & ":" & @CRLF & $sConverted)
EndFunc

provider with jb51.net (unicode)