System.Text.UTF8Encoding From VBScript - PullRequest
       13

System.Text.UTF8Encoding From VBScript

0 голосов
/ 18 марта 2012

Как бы вы вызвали GetBytes (из System.Text.UTF8Encoding) из VBScript?

Вы можете использовать .NET Framework из VBScript , так как он доступен для COM , но я не встречал хорошую документацию / руководства.

1 Ответ

3 голосов
/ 18 марта 2012

Если вы ищете эквивалент в VBScript, вы можете сделать это с помощью Ado Stream:

Const adTypeBinary = 1
Dim adoStr, bytesthroughado
Set adoStr = CreateObject("Adodb.Stream")
    adoStr.Charset = "utf-8"
    adoStr.Open
    adoStr.WriteText "你好Ğ"
    adoStr.Position = 0 'reset position
    adoStr.Type = adTypeBinary
    adoStr.Position = 3 'skip bom
    bytesthroughado = adoStr.Read 'get bytes
    WScript.Echo LenB(bytesthroughado) 'length
    adoStr.Close
Set adoStr = Nothing

Возможно получить доступ к некоторым компонентам .Net (из mscorlib) из VBScript.

Dim encoding, bytesthroughdotnet
Set encoding = CreateObject("System.Text.UTF8Encoding")
    bytesthroughdotnet = encoding.GetBytes_4("你好Ğ") 'get bytes
    WScript.Echo LenB(bytesthroughdotnet) 'length
Set encoding = Nothing
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...