Как определить, что данная строка является двухбайтовым набором символов с использованием Java? - PullRequest
1 голос
/ 06 июля 2011

Я хочу определить, задана ли строка двухбайтовым набором символов или нет, используя java?

Спасибо

Ответы [ 3 ]

2 голосов
/ 06 июля 2011

A String не имеет свойства набора символов, фактически оно всегда UTF-16 (16 бит используется для каждого символа).

1 голос
/ 06 июля 2011

Если вы хотите попытаться обнаружить вероятную кодировку некоторых входных данных (например, в файле или потоке), то можно использовать ICU4J CharsetDetector .

Но к тому времениданные в вашем коде находятся в строке, это слишком поздно.

0 голосов
/ 06 июля 2011

Ваша строка содержит многобайтовые символы, если String.codePointCount(int beginIndex, int endIndex) для всего текстового диапазона даст не нулевой результат.

...