Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
VS2012, C++, Вывод utf-8 в консоль. Без доп библиотек.
|
|||
|---|---|---|---|
|
#18+
Доброго времени. Нужно выводить в консоль строки utf-8. Выводятся или иероглифы или прямоугольники. Кто-нибудь решал такую задачу? SetConsoleCP(CP_UTF8), SetConsoleOutputCP(CP_UTF8), system("chcp 65001") пробовал. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.11.2012, 10:53 |
|
||
|
VS2012, C++, Вывод utf-8 в консоль. Без доп библиотек.
|
|||
|---|---|---|---|
|
#18+
sherzod_Доброго времени. Нужно выводить в консоль строки utf-8. Выводятся или иероглифы или прямоугольники. Кто-нибудь решал такую задачу? SetConsoleCP(CP_UTF8), SetConsoleOutputCP(CP_UTF8), system("chcp 65001") пробовал.Setlocale пробовал? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.11.2012, 11:20 |
|
||
|
VS2012, C++, Вывод utf-8 в консоль. Без доп библиотек.
|
|||
|---|---|---|---|
|
#18+
Katamaran1987, setlocale(LC_ALL, "Russian"); setlocale(LC_ALL, "ru_RU.UTF-8"); setlocale(LC_ALL, ""); пробовал. Еще пробовал #pragma execution_character_set("utf-8") // такой прагмы в 2012 вообще нет _setmode(_fileno(stdout), _O_U8TEXT); // В 2012 натыкается на ассерт д-я студия, в linux о таких вещах даже и не задумываешься. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.11.2012, 12:00 |
|
||
|
VS2012, C++, Вывод utf-8 в консоль. Без доп библиотек.
|
|||
|---|---|---|---|
|
#18+
sherzod_Выводятся или иероглифы или прямоугольники. А консольный шрифт у тебя юникодный?.. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.11.2012, 14:16 |
|
||
|
VS2012, C++, Вывод utf-8 в консоль. Без доп библиотек.
|
|||
|---|---|---|---|
|
#18+
Dimitry Sibiryakov, Да. Аналогичный код скомпилированный gcc, в той же консоли работает почти нормально. В самом начале только выводятся два символа видимо в связи с попыткой консоли вывести BOM и надо еще переключать консоль в режим chcp 65001. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.11.2012, 14:35 |
|
||
|
VS2012, C++, Вывод utf-8 в консоль. Без доп библиотек.
|
|||
|---|---|---|---|
|
#18+
Dimitry Sibiryakovsherzod_Выводятся или иероглифы или прямоугольники. А консольный шрифт у тебя юникодный?.. Он должен быть не только юникодным, а конкретно поддерживать кодировку UTF-8. На самом деле в винде поддержки UTF-8 нет, на сколько я знаю, ни один шрифт не поддерживает UTF-8, и нет кодовой страницы для UTF-8. (могу ошибаться) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.11.2012, 15:21 |
|
||
|
VS2012, C++, Вывод utf-8 в консоль. Без доп библиотек.
|
|||
|---|---|---|---|
|
#18+
MasterZiv(могу ошибаться) И ошибаешься. Причём по всем пунктам. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.11.2012, 15:38 |
|
||
|
VS2012, C++, Вывод utf-8 в консоль. Без доп библиотек.
|
|||
|---|---|---|---|
|
#18+
Dimitry SibiryakovMasterZiv(могу ошибаться) И ошибаешься. Причём по всем пунктам. Здесь пишут что нужно использовать Lucida Console. А почему "по всем" пунктам? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.11.2012, 16:50 |
|
||
|
VS2012, C++, Вывод utf-8 в консоль. Без доп библиотек.
|
|||
|---|---|---|---|
|
#18+
maytonА почему "по всем" пунктам? Э-э-э... Ты можешь назвать в чём MasterZiv прав? Я - нет. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.11.2012, 16:55 |
|
||
|
VS2012, C++, Вывод utf-8 в консоль. Без доп библиотек.
|
|||
|---|---|---|---|
|
#18+
Господин, с профилем Delphi разработчика. Давайте вместе с вами откроем хоть какой-то р есурс где описан фонт и из чего он состоит. Ну хотя-бы тут. http://msdn.microsoft.com/en-us/library/windows/desktop/dd145037%28v=vs.85%29.aspx И почитаем где там и чего указано про utf-8. По сабжу, если правы то и я не буду возражать. Но давайте-ж в техническом русле... Как-то так вобщем. C уважением, mayton ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.11.2012, 17:13 |
|
||
|
VS2012, C++, Вывод utf-8 в консоль. Без доп библиотек.
|
|||
|---|---|---|---|
|
#18+
maytonДавайте вместе с вами откроем хоть какой-то ресурсгде описан фонт и из чего он состоит. Ну хотя-бы тут. http://msdn.microsoft.com/en-us/library/windows/desktop/dd145037%28v=vs.85%29.aspx И почитаем где там и чего указано про utf-8. Прочитал. Нигде и ничего. Как, собственно, и ожидалось. А вот MasterZiv утверждает обратное: [/quot MasterZiv]Он должен быть не только юникодным, а конкретно поддерживать кодировку UTF-8.[/quot] Т.е. что шрифт может (и должен) поддерживать utf-8. Будете утверждать, что он прав? Шрифт это набор глифов. Он либо содержит глифы для первых 256 символов, либо больше. UTF-8 - многобайтная кодировка для Unicode. Чтобы отобразить текст в кодировке UTF-8, её нужно сначала преобразовать в Unicode (UCS2 или UCS4), а уже потом по полученному коду найти нужный глиф. Если он в данном шрифте есть. Это может сказать GetFontUnicodeRanges(). Ну а если в шрифте нет глифа для данного кода, то на экране будет квадрат. Что и видит ТС. Команда chcp задаёт способ преобразования из однобайтной кодировки в unicode перед выводом. Так что получить на экране мусор можно если а) Кодировка данных при вызове ANSI-функций вывода не соответствует установленной сhcp. б) Unicode-функциям скармливается мусор вместо ожидаемого виндой UTF-16. в) Шрифт консольного окна не имеет глифов для выводимых символов. Возражения?.. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.11.2012, 17:35 |
|
||
|
VS2012, C++, Вывод utf-8 в консоль. Без доп библиотек.
|
|||
|---|---|---|---|
|
#18+
MasterZivDimitry Sibiryakovпропущено... А консольный шрифт у тебя юникодный?.. Он должен быть не только юникодным, а конкретно поддерживать кодировку UTF-8. На самом деле в винде поддержки UTF-8 нет, на сколько я знаю, ни один шрифт не поддерживает UTF-8, и нет кодовой страницы для UTF-8. (могу ошибаться) Дмитрий. Я квотирую еще раз ваш спор. Я считаю что полноценной поддержки для UTF-8 предоставить технически невозможно по самому определению и по свойствам UTF-8. В эту кодировку заложена принципиальная неограниченность набора символов. Wiki пишет что существуют несколько стандартов по отображению utf-8 на 2,4,6 байт других кодировок но это частные случаи и допущения и прочие договорённости. Поэтому обеспечить шрифт поддержкой utf-8 на 100% технически невозможно! Это - ваша ошибка! Поймите это. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.11.2012, 18:05 |
|
||
|
VS2012, C++, Вывод utf-8 в консоль. Без доп библиотек.
|
|||
|---|---|---|---|
|
#18+
maytonWiki пишет Не читайте заборы. Читайте первоисточники www.unicode.org Basic plane вполне реально обеспечить, а расширенные практически никому не нужны. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.11.2012, 19:30 |
|
||
|
VS2012, C++, Вывод utf-8 в консоль. Без доп библиотек.
|
|||
|---|---|---|---|
|
#18+
Что за basic plane? Поиск по site:www.unicode.org AND basic AND plane ничего не даёт. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.11.2012, 19:39 |
|
||
|
VS2012, C++, Вывод utf-8 в консоль. Без доп библиотек.
|
|||
|---|---|---|---|
|
#18+
maytonЧто за basic plane? Это первые 65635 символов, покрываемые UCS2. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.11.2012, 19:44 |
|
||
|
VS2012, C++, Вывод utf-8 в консоль. Без доп библиотек.
|
|||
|---|---|---|---|
|
#18+
Не работает виндовая консоль с utf8 - вывод хаотически "рубится". В моих экспериментах, как правило, на первом кириллическом символе. Перенаправление - работает, вывод - нет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.11.2012, 21:16 |
|
||
|
VS2012, C++, Вывод utf-8 в консоль. Без доп библиотек.
|
|||
|---|---|---|---|
|
#18+
Basil A. SidorovНе работает виндовая консоль с utf8 - вывод хаотически "рубится". Типичный симптом переполнения буфера. Кто-то забыл учесть существование многобайтных кодировок. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.11.2012, 21:26 |
|
||
|
VS2012, C++, Вывод utf-8 в консоль. Без доп библиотек.
|
|||
|---|---|---|---|
|
#18+
Вот тестовый пример. У меня, откомпилированный BCB или MSVC2010 и запущенный в окне "cmd /w" со шрифтом Lucida Console, стабильно выводит "абвгде" во всех кодировках, какие мне в голову пришли. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.11.2012, 21:53 |
|
||
|
VS2012, C++, Вывод utf-8 в консоль. Без доп библиотек.
|
|||
|---|---|---|---|
|
#18+
Dimitry SibiryakovmaytonЧто за basic plane? Это первые 65635 символов, покрываемые UCS2. А кто будет создавать шрифт с поддержкой 64 К символов? Этож ресурс! Он будет для каждого размера шрифта растеризоваться и прогружаться в память. При том что нормальному человеку хватает поддержки 2-3 языков в операционке. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.11.2012, 22:53 |
|
||
|
VS2012, C++, Вывод utf-8 в консоль. Без доп библиотек.
|
|||
|---|---|---|---|
|
#18+
maytonОн будет для каждого размера шрифта растеризоваться и прогружаться в память. С какого бы перепою он растеризовался?.. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.11.2012, 23:31 |
|
||
|
VS2012, C++, Вывод utf-8 в консоль. Без доп библиотек.
|
|||
|---|---|---|---|
|
#18+
Dimitry SibiryakovmaytonОн будет для каждого размера шрифта растеризоваться и прогружаться в память. С какого бы перепою он растеризовался?.. А иначе его на экране не видно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.11.2012, 23:32 |
|
||
|
VS2012, C++, Вывод utf-8 в консоль. Без доп библиотек.
|
|||
|---|---|---|---|
|
#18+
я конечно не спец в этом вопросе, но насколько знаю, что еще важно озвучить что за винда. Вероятно, что в XP, где utf16 будут траблы, а вот в vista/7 может и заведется на сухую без преобрахзований (но не уверен). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.12.2012, 14:22 |
|
||
|
VS2012, C++, Вывод utf-8 в консоль. Без доп библиотек.
|
|||
|---|---|---|---|
|
#18+
Ggg_oldВероятно, что в XP, где utf16 будут траблы Почему у меня в ХР с вышеприложенным примером траблов нет? Руки?.. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.12.2012, 14:45 |
|
||
|
VS2012, C++, Вывод utf-8 в консоль. Без доп библиотек.
|
|||
|---|---|---|---|
|
#18+
О, да там оказывается баг в консоли, а вы стены головой пробиваете. Оцените тред http://connect.microsoft.com/VisualStudio/feedback/details/696663/cout-cannot-print-utf-utput-to-console ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.12.2012, 14:46 |
|
||
|
VS2012, C++, Вывод utf-8 в консоль. Без доп библиотек.
|
|||
|---|---|---|---|
|
#18+
форум поел ссылку. cout-cannot-print-utf-utput-to-console ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.12.2012, 14:47 |
|
||
|
|

start [/forum/topic.php?fid=57&fpage=88&tid=2020621]: |
0ms |
get settings: |
7ms |
get forum list: |
10ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
62ms |
get topic data: |
12ms |
get forum data: |
2ms |
get page messages: |
60ms |
get tp. blocked users: |
2ms |
| others: | 11ms |
| total: | 172ms |

| 0 / 0 |
