Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Программирование и базы данных (http://forum.oszone.net/forumdisplay.php?f=21)
-   -   std::string - переделать символы в 16-bit Unicode (http://forum.oszone.net/showthread.php?t=241027)

crashtuak 21-08-2012 11:34 1973871

std::string - переделать символы в 16-bit Unicode
 
Есть строка std::string, с русскими символами. Строка пишется в файл, и файл читается программой на JAVA... Соответственно в JAVA получаем крякозябры, так как в char однобайтный, а в JAVA двубайтный. Как перелопатить символы в двубайтные и запихнуть их в std::string(соответственно в перелопаченой строке в программе на с++ мы получим неразбериху)?

PhilB 21-08-2012 17:19 1974076

Частично понял задачу, но, по-моему, лучше сразу взять строку с типом элемнтов "широкий символ" wchar_t.
То есть вместо string надо использовать basic_string<wchar_t>. Тогда проблем по идеи быть не должно.
Точно сказать будет ли работать не могу, т.к. предпочитаю Qt`шний QString. Там очень шbрокие возможности по работе с кодировками.


Время: 22:25.

Время: 22:25.
© OSzone.net 2001-