![]() |
Внимание, важное сообщение: Дорогие Друзья!
В ноябре далекого 2001 года мы решили создать сайт и форум, которые смогут помочь как начинающим, так и продвинутым пользователям разобраться в операционных системах. В 2004-2006г наш проект был одним из самых крупных ИТ ресурсов в рунете, на пике нас посещало более 300 000 человек в день! Наша документация по службам Windows и автоматической установке помогла огромному количеству пользователей и сисадминов. Мы с уверенностью можем сказать, что внесли большой вклад в развитие ИТ сообщества рунета. Но... время меняются, приоритеты тоже. И, к сожалению, пришло время сказать До встречи! После долгих дискуссий было принято решение закрыть наш проект. 1 августа форум переводится в режим Только чтение, а в начале сентября мы переведем рубильник в положение Выключен Огромное спасибо за эти 24 года, это было незабываемое приключение. Сказать спасибо и поделиться своей историей можно в данной теме. С уважением, ваш призрачный админ, BigMac... |
|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » Разное - Некорректный вывод в консоль Паскаль программы |
|
Разное - Некорректный вывод в консоль Паскаль программы
|
Новый участник Сообщения: 42 |
Здравствуйте.
Есть программа написанная на Turbo Pascal, и работающая в текстовом режиме. В консоли Windows 80х25 всё работает хорошо. Я хотел её ещё скомпилировать под Linux используя Free Pascal. Скомпилировать удалось, но выводит информацию в терминале криво. Где то на 45-50м символе строка обрывается и переносится на другую/или вообще не переносится, причём последний символ в месте разрыва либо исчезает либо крякозябром отображается. В остальном вроде нормально функционирует. Терминал в Linux достаточно широкий (90 символов), а моя строка занимает макс. 65. Т.е. места ещё хватает. Для вывода используются функции Write,WriteLn. Кодировка UTF-8, русские символы. В чём может быть проблема и как решить? Есть идея TextMode пробовать, хотя не уверен что поможет. |
|
Отправлено: 18:49, 10-09-2013 |
Новый участник Сообщения: 42
|
Профиль | Сайт | Отправить PM | Цитировать Textmode испытал, как и думал - не помогло.
TextMode(CO80) продлил строку аж на 2 символа! CO80+Font8x8 - вообще не выводит, ещё пустые строки вставляет. Проверял значение константы LastMode - она равна 3, т.е. инициализируется нужный режим 80х25, но строка почему-то переносится ![]() Неужели никто не может подсказать, как это можно исправить? ![]() |
Отправлено: 17:16, 11-09-2013 | #2 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Пользователь Сообщения: 121
|
Профиль | Отправить PM | Цитировать Скорее всего проблема с обработкой UTF-8. Один символ UTF-8 воспринимается writeln как 2 символа ASCII вот и выводятся чудеса. Посмотрите документацию по вашей версии FPC, возможно там Unicode вобще не поддерживается.
|
Отправлено: 09:49, 12-09-2013 | #3 |
Новый участник Сообщения: 42
|
Профиль | Сайт | Отправить PM | Цитировать Цитата torauma:
Версия 2.2.4 В документации написано, что есть поддержка UTF8, причём по умолчанию. Может мне в 1251 сделать, но надо как-то на время выполнения программы задать эту кодовую страницу в терминале. Как это сделать? SetConsoleOutputCP - это только на Win-платформах кажется работает. |
|
Отправлено: 19:06, 14-09-2013 | #4 |
![]() |
Участник сейчас на форуме |
![]() |
Участник вне форума |
![]() |
Автор темы |
![]() |
Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
Разное - Многократное выполнение программы на паскаль | Паркан | Программирование и базы данных | 6 | 25-03-2013 08:53 | |
CMD/BAT - [решено] Некорректный разбор строки | RedScorpio | Скриптовые языки администрирования Windows | 5 | 03-06-2011 17:52 | |
PowerShell - Вывод нумерации элементов массива в консоль | tarasov.evgeny | Скриптовые языки администрирования Windows | 0 | 12-04-2011 13:36 | |
PowerShell - Сбор сведений на удаленных компьютерах и вывод в консоль | tarasov.evgeny | Скриптовые языки администрирования Windows | 2 | 18-03-2011 17:19 | |
C/C++ - bat & cmd - сокрытие окна и вывод данных консоли в интерфейсе нашей программы | crashtuak | Программирование и базы данных | 5 | 07-05-2009 16:40 |
|