И столкнулся с непонятным. Кодировка СР1251. В консоли выбран шрифт Lucida Console, т. е. той же кодировки. Текст отображается правильно. Но тот текст, который я ввожу - крякозябрами. Т. е. в DOS'овской кодировке? СР866?

Наладить общение поможет, если вы подпишитесь по почте на новые темы в этом форуме.
![]() |
camac |
![]()
Сообщение
#1
|
Новичок ![]() Группа: Пользователи Сообщений: 23 Пол: Мужской Репутация: ![]() ![]() ![]() |
Удалась возможность разжиться ПК с Виндовс.
И столкнулся с непонятным. Кодировка СР1251. В консоли выбран шрифт Lucida Console, т. е. той же кодировки. Текст отображается правильно. Но тот текст, который я ввожу - крякозябрами. Т. е. в DOS'овской кодировке? СР866? ![]() |
![]() ![]() |
OCTAGRAM |
![]()
Сообщение
#2
|
![]() Большевик–концептуал ![]() ![]() ![]() Группа: Пользователи Сообщений: 194 Пол: Мужской Реальное имя: Иван Левашев Jabber: bu_gen@octagram.name Skype: i.levashew QQ: 3152538431 Ада: Сторонник Embarcadero Delphi: Сторонник Free Pascal: Разработчик Turbo Pascal: Установлен Репутация: ![]() ![]() ![]() |
Какая версия FPC? Это 3.0 себя так ведёт? Он же вроде Юникодный, там должны были попрощаться наконец с бредом про кодировки
WriteConsoleW в Windows, во всяком случае, работает в Юникоде, и лучше пользоваться WinAPI, если в FPC RTL такая древняя, что до сих пор остались какие-то кодировки. Более правильно было бы не конкретно CP1251, а, наверное, CP_ACP. Это раз. Не знаю, как там с файловой системой работа, но если консольное API для древних, работающих в однобайтных кодировках, программ, переключено в ANSI, то файловое API для древних, работающих в однобайтных кодировках, программ, по-прежнему работает в OEM, и это может быть проблемой. Тогда ещё SetFileApisToAnsi может потребоваться. Но вообще просто не надо в 2019 писать с кодировками, отличными от кодировок Юникода -------------------- If you want to get to the top, you have to start at the bottom
|
![]() ![]() |
![]() |
Текстовая версия | 15.04.2025 6:02 |