Небольшая библиотека Unicode с открытым исходным кодом для C/С++
Кто-нибудь знает о большой небольшой библиотеке обработки Unicode с открытым исходным кодом для C или С++? Я просмотрел ICU, но это кажется слишком большим.
Мне нужна библиотека для поддержки:
- все нормальные кодировки
- Нормализация
- поиск типов символов - поиск, если символ должен быть разрешен в идентификаторах и комментариях
- валидация - признание бессмыслицы
Ответы
Ответ 1
Я посмотрел на UT8-CPP и libiconv, и, похоже, у меня не было всех функций, которые мне нужны. Поэтому, я думаю, я просто использую ICU, хотя он действительно большой. Я думаю, что есть некоторые способы избавиться от ненужных функций и данных, поэтому я попробую это. Эта страница (в разделе "Настройка библиотеки данных ICU" ) описывает, как вырезать некоторые данные.
Ответ 2
Ну, iconv является хорошей отправной точкой как минимум.
Кроме того, поиск google возвращает другой вопрос о стекеповерхности! Ужас!
SO: Light Unicode library
Ответ 3
UTF8-CPP был рекомендован в принятом ответе на аналогичный вопрос: Портативный и простой Строковая библиотека unicode для C/С++?
Ответ 4
Сколько функций вам действительно нужно? Во многих случаях я нахожу преобразование в один тип внутри (например, UTF8) и обработку различных кодировок только при загрузке или сохранении более чем достаточно. Если вы готовы потратить немного времени и написать класс, чтобы справиться с этим, я уверен, что вы будете его повторно использовать снова и снова.
У меня есть где-то где-то, но iirc UTF32LE/BE не проверен: http://aaq.cc/d
Если вашему проекту действительно нужно обрабатывать различные кодировки, кроме как загружать/сохранять файлы, тогда вам, вероятно, лучше всего будет работать с библиотекой, хотя...