Форум программистов, компьютерный форум, киберфорум
Delphi для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.91/47: Рейтинг темы: голосов - 47, средняя оценка - 4.91
s1nn3r

русский язык и cmd

25.02.2010, 15:32. Показов 10252. Ответов 2
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Доброго времени суток граждане !
Есть такой вопрос :
Возможно ли сделать новрмальный вывод данных на русском в консоли(выньдовс)?
По условию задачи я зделал программку которая работает с типизированным файлом , всё нормально работает , вот только если ввожу данные на русском , то при отображении оных показывает крякозяблы ....=(
Кто нибудь сталкивался с подобной проблемой? Или это только гуями лечиться ?=)
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
25.02.2010, 15:32
Ответы с готовыми решениями:

Русский язык
Что сделать чтоб в делфе 2007 воспринимало русский (пишет иероглифами при выполнении программы)

Делфи и Русский язык
Считываю строку "абажур m" из файла .txt После прогона через оператор Read выдается "абажур...

Русский язык, кодировка
Добрый день. Писал программу для работы с текстовыми файлами, в ней используется функция pos(), с символами и английскими буквами...

2
Videor venisse
128 / 109 / 6
Регистрация: 19.02.2010
Сообщений: 221
25.02.2010, 16:19
Лучший ответ Сообщение было отмечено как решение

Решение

Один из вариантов при создании консольного приложения в Delphi это использовать API функцию CharToOem из модуля Windows.
В функции CharToOem два параметра и она имеет вид на С++:
BOOL CharToOem(LPCTSTR lpszSrc, LPSTR lpszDst );
И на Delphi:
function CharToOem(lpszSrc: PChar; lpszDst: PChar): BOOL; stdcall;
где 1-й параметр источник, а второй приемник.
В приложении использование этой функции выглядит это приблизительно так:
Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
program Name;
 
{$APPTYPE CONSOLE}
 
uses
  Windows, System;
 
var
  welcome : PAnsiChar; // или PChar
 
begin
  CharToOem('Привет!', welcome);
  Writeln(welcome);
  ReadLn
end.
И далее в том же духе для вывода любых сообщений на русском.
1
s1nn3r
26.02.2010, 23:54
нашёл такой способ
Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
program Project1;
 
{$APPTYPE CONSOLE}
 
uses
  Windows,
  SysUtils;
 
function ToOem(const AStr: String): AnsiString;
begin
  SetLength(Result, Length(AStr));
  CharToOemBuff(PChar(AStr), PAnsiChar(Result), Length(AStr));
end;
 
begin
  try
    Writeln(ToOem('Тест'));
    Readln;
except
    on E: Exception do
      Writeln(E.Classname, ': ', E.Message);
  end;
end.
идеально подходит для отображения , и без гемороя с переменными

Всем спасибо за помощь! Вопрос решён
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
26.02.2010, 23:54
Помогаю со студенческими работами здесь

Русский язык в Delphi 7
здравствуйте. как сделать чтобы в делфи воспринимала русский язык, а то когда на русском пишу, либо палоки какие то выскакивают вместо...

Delphi не отображается русский язык
В консоле отображаются сиволы за место русского языка,что делать? Broland Delphi P.s Я новенький здесь и я не нашел раздел помощь...

Delphi ругается на русский язык в переменных и типах
Делфи ругается если в перечислимом типе ввожу русские слова например Вася, Петя. И отказывается компилировать. Причем ругается не на...

Как сделать, чтобы в консоли был русский язык?
написала прогу, проблема в том, что не хочет выводить русский язык :( помогите пожалуйста! program Project2; {$APPTYPE...

дайти пожалуйста русский язык для rad studio 2010
Есть наверника у кого патчик??? Добавлено через 13 минут О да версия вот такая. Embarcadero® Delphi® XE2 Version 16.0.4504.48759


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Новые блоги и статьи
Символьное дифференцирование
igorrr37 13.02.2026
/ * Логарифм записывается как: (x-2)log(x^2+2) - означает логарифм (x^2+2) по основанию (x-2). Унарный минус обозначается как ! */ #include <iostream> #include <stack> #include <cctype>. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru