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

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Программирование и базы данных (http://forum.oszone.net/forumdisplay.php?f=21)
-   -   MS + C++ = Kpako3@бJluku, проблемы в консоле с русским (http://forum.oszone.net/showthread.php?t=87493)

Kleopatra 23-07-2007 20:45 617630

MS + C++ = Kpako3@бJluku, проблемы в консоле с русским
 
Банальная ситуация, как сделать чтоб мои проги в MS работало без кракозябликов в консоли

XPEHOMETP 23-07-2007 22:42 617669

Windows используют ANSI-кодировку (если отвлечься от Unicode), но в консоли все выводится в OEM-кодировке (DOS-овской). Вот так сделано, и поменять ничего нельзя. Поэтому решения могут быть такие:

1. Писать свои программы в редакторе, котрый хорошо понимает русскую ДОСовскую кодировку. Например, BRED (блокнот редактора), KoEdit. А потом это открыть в своей среде разработки и компилировать. Или перенести туда некоторые фрагментики с кириллицей через буфер обмена.

2. Сохранять русский вывод в консоль в виде текстовых переменных и прогнать их через функцию WinAPI CharToOem.

3. Искать библиотеки сторонних фирм, которые позволяют перехватывать консольный вывод и выводить его в стандартное виндовское окно - уже в кодировке ANSI. Такие вещи, например, делаются в Compaq Visual Fortran.

4. Не пользоваться консолью, делать изначально виндовское приложение и нормально выводить все в ANSI


Время: 20:43.

Время: 20:43.
© OSzone.net 2001-