| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > C/C++: Базы данных > kak chitat' utf_8 iz bazi v programmu |
| Автор: Garo 11.9.2009, 13:15 |
| Ya pishu odnu programmu na C++, kotoriy buder rabotat' s armyanskimi bukvami, i dlya etovo mne nujno chitat kakie to armyanskie slova iz bazi MySQL v programmu. v baze eti armyanskie slova napisani kodirovkoy utf_8. Vopros: kak mne chitat ix v programmu, chtob oni imeli tip wchar_t ???? ili mojet predlojete chto nibud' luchshe? zaranee bolshoe spasibo!!! |
| Автор: jonie 11.9.2009, 23:16 | ||
| wchar_t обычно это не utf-8, т.к. размер wchar_t фиксирован, в тоже время utf8 такого не продрузамевает. Вообще для чтения utf-8 из mysql вам нужно будет сказать ему чтобы он вам отдавал этот самый utf-8. Делается это так:
(это сразу после того как подключились). ну а далее стандартные функции mysql будут возращать вам utf-8 (ну как указатель собственно на char*). Для того чтобы сконвертировать полученное в другую кодировку (например UCS-2) используйте libiconv.... так же есть вариант использовать ICU (http://icu-project.org/)...... |
| Автор: Garo 12.9.2009, 09:04 |
| nu eto ya znayu chto v baze moi slova predstavleni kodirovkoy utf-8, mne prosto nujno imet eti slova v programme tipom wchar_t, vot i vsyo. |
| Автор: jonie 13.9.2009, 11:44 |
| wchar_t это, обычно UCS-2. Считайте в utf-8 и переконвертируйте в ucs-2 используя libiconv, я уже это писал. В чем проблемы ? |
| Автор: Garo 16.9.2009, 13:58 |
| mojet eto budet zvuchat nelepo, no ya ne znayu chto takoe libiconv, vi ne podskajete, i ot kuda dastat' eto, kak ispolzovat', mojet primerchik napishite. Spasibo!!! |
| Автор: Alexeis 16.9.2009, 14:19 |
| Garo, пожалуйста, пользуйтесь функцией транслита (ниже смайликов). Добавлено через 5 минут и 12 секунд P.S. Если работаете под windows, то можно воспользоваться нативыми функциями MultiByteToWideChar/WideCharToMultiByte http://msdn.microsoft.com/en-us/library/aa450989.aspx http://msdn.microsoft.com/en-us/library/ms886760.aspx |