Проверка текста на UTF-8
От: pvnic  
Дата: 15.05.12 06:59
Оценка:
Парни, можно как-нибудь проверить, что текст содержит только символы юникода?

т.е. нужно, чтобы вот такая строка "ОПАsdfsd•adfasdte" сругнулась бы на центральный символ(он кстати аж 3мя байтами представляется.
а вот без точки — все ок

Character.isDefined — не канает, т.к. он побайтно проверяет

пока вот можно, конечно, зажаться на кол-во байтов
Re: Проверка текста на UTF-8
От: Blazkowicz Россия  
Дата: 15.05.12 07:34
Оценка:
Здравствуйте, pvnic, Вы писали:

P>Парни, можно как-нибудь проверить, что текст содержит только символы юникода?

UTF-8 и Unicode это не слова-синонимы.

P>т.е. нужно, чтобы вот такая строка "ОПАsdfsd•adfasdte" сругнулась бы на центральный символ(он кстати аж 3мя байтами представляется.

P>а вот без точки — все ок
P>Character.isDefined — не канает, т.к. он побайтно проверяет
Каждый символ сконвертить в UTF-8 и посмотреть количество байт?
Re: Проверка текста на UTF-8
От: vsb Казахстан  
Дата: 15.05.12 07:37
Оценка:
Здравствуйте, pvnic, Вы писали:

P>Парни, можно как-нибудь проверить, что текст содержит только символы юникода?


P>т.е. нужно, чтобы вот такая строка "ОПАsdfsd•adfasdte" сругнулась бы на центральный символ(он кстати аж 3мя байтами представляется.

P>а вот без точки — все ок

P>Character.isDefined — не канает, т.к. он побайтно проверяет


P>пока вот можно, конечно, зажаться на кол-во байтов


Ничего не понятно. Текст по определению содержит только символы юникода. Чем вам центральный символ не понравился — не понятно. Вам надо, чтобы каждый символ кодировался не более чем двумя байтами в UTF-8?
Re[2]: Проверка текста на UTF-8
От: Blazkowicz Россия  
Дата: 15.05.12 07:41
Оценка:
Здравствуйте, vsb, Вы писали:

vsb>Ничего не понятно. Текст по определению содержит только символы юникода. Чем вам центральный символ не понравился — не понятно. Вам надо, чтобы каждый символ кодировался не более чем двумя байтами в UTF-8?

http://www.fileformat.info/info/unicode/char/2022/index.htm
этот буллит в UTF-8 кодируется 3мя байтами — e280a2. Но почему такая задача стоит, действительно не ясно. Вполне валидный 3х байтовый UTF-8.
Re: Проверка текста на UTF-8
От: Blazkowicz Россия  
Дата: 15.05.12 07:43
Оценка:
Здравствуйте, pvnic, Вы писали:

Можно ещё после конвертации в UTF-8 отсканивать в поисках символов, которые начинают 3х байтовую UTF-8 последовательность.
http://www.fileformat.info/info/unicode/utf8.htm
Хотя если начальное условие — сам текст. То можно код символа проверять на вход в 1-2х байтовый диапазон. Там же по ссылке — Maximum Expressible Unicode Value
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.