tobo 55a7f90e4c Restoring authorship annotation for <tobo@yandex-team.ru>. Commit 2 of 2. 3 years ago
..
generated 5085152b94 Restoring authorship annotation for <alzobnin@yandex-team.ru>. Commit 2 of 2. 3 years ago
ut 5085152b94 Restoring authorship annotation for <alzobnin@yandex-team.ru>. Commit 2 of 2. 3 years ago
README.md 5085152b94 Restoring authorship annotation for <alzobnin@yandex-team.ru>. Commit 2 of 2. 3 years ago
ci_string.cpp 9abfb1a53b Restoring authorship annotation for <yazevnul@yandex-team.ru>. Commit 2 of 2. 3 years ago
ci_string.h 344ea37b4a Restoring authorship annotation for Vlad Yaroslavlev <vladon@vladon.com>. Commit 2 of 2. 3 years ago
ci_string_ut.cpp 344ea37b4a Restoring authorship annotation for Vlad Yaroslavlev <vladon@vladon.com>. Commit 2 of 2. 3 years ago
codepage.cpp 5085152b94 Restoring authorship annotation for <alzobnin@yandex-team.ru>. Commit 2 of 2. 3 years ago
codepage.h 5085152b94 Restoring authorship annotation for <alzobnin@yandex-team.ru>. Commit 2 of 2. 3 years ago
codepage_ut.cpp 55a7f90e4c Restoring authorship annotation for <tobo@yandex-team.ru>. Commit 2 of 2. 3 years ago
cp_encrec.cpp 9abfb1a53b Restoring authorship annotation for <yazevnul@yandex-team.ru>. Commit 2 of 2. 3 years ago
doccodes.cpp d3a398281c Restoring authorship annotation for Anton Samokhvalov <pg83@yandex.ru>. Commit 2 of 2. 3 years ago
doccodes.h 9123176b34 Restoring authorship annotation for Ruslan Kovalev <ruslan.a.kovalev@gmail.com>. Commit 2 of 2. 3 years ago
iconv.cpp d3a398281c Restoring authorship annotation for Anton Samokhvalov <pg83@yandex.ru>. Commit 2 of 2. 3 years ago
iconv.h d3a398281c Restoring authorship annotation for Anton Samokhvalov <pg83@yandex.ru>. Commit 2 of 2. 3 years ago
iconv_ut.cpp 9abfb1a53b Restoring authorship annotation for <yazevnul@yandex-team.ru>. Commit 2 of 2. 3 years ago
recyr.hh 5085152b94 Restoring authorship annotation for <alzobnin@yandex-team.ru>. Commit 2 of 2. 3 years ago
recyr_int.hh 5085152b94 Restoring authorship annotation for <alzobnin@yandex-team.ru>. Commit 2 of 2. 3 years ago
wide.cpp 1110808a9d intermediate changes 3 years ago
wide.h eec632e483 Restoring authorship annotation for <qkrorlqr@yandex-team.ru>. Commit 2 of 2. 3 years ago
wide_ut.cpp 5085152b94 Restoring authorship annotation for <alzobnin@yandex-team.ru>. Commit 2 of 2. 3 years ago
ya.make 5085152b94 Restoring authorship annotation for <alzobnin@yandex-team.ru>. Commit 2 of 2. 3 years ago

README.md

Здесь представлены функции и enum'ы для работы с кодировками.

Наиболее полезные конструкции этой библиотеки:

  1. enum ECharset - перечень кодировок, которые умеет определять детектор кодировок.
  2. Функция inline TString Recode(ECharset from, ECharset to, const TString& in) для преобразования кодировок.
  3. Функция inline TUtf16String UTF8ToWide(const char* text, size_t len, const CodePage& cp), пытающаяся построить широкую строку из UTF-8, а если не получается - с помощью кодировки cp.

  4. Класс TCiString - аналог TString, но использующий case-insensitive-компаратор и хеш и поддерживающий разные кодировки.

В комплекте есть ещё много функций для работы со старой однобайтной Yandex-кодировкой. Не рекомендуется к использованию. Для преобразования из UTF-8 в TUtf16String и для работы с Unicode используйте функции из arcadia/util/charset.