VBScript chr(), похоже, возвращает неправильное значение

StackOverflow https://stackoverflow.com/questions/315719

Вопрос

Я пытаюсь преобразовать символьный код в символ с помощью chr(), но VBScript не дает мне ожидаемого значения.Согласно VBScript, символьный код 199 равен:

�

Однако при использовании чего-то вроде String.fromCharCode Javascript значение 199 равно:

Ç

Второй результат - это то, что мне нужно получить из функции chr() VBScript.Есть какие-нибудь идеи, в чем проблема?

Это было полезно?

Решение

Отредактировано с учетом комментариев

Chr(199) возвращает 2-байтовый символ, который интерпретируется как 2 отдельных символа.

  • используйте ChrW(199) для возврата строки в Юникоде.
  • используйте ChrB(199), чтобы вернуть его в виде однобайтового символа

Другие советы

Кодировка - это проблема. Javascript может интерпретироваться как латиница-1; VBScript может использовать другую кодировку и запутаться.

fromCharCode () принимает указанные значения Юникод и возвращает строку.

Функция Chr преобразует указанный код символа ANSI в символ.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top