Подскажите как корректно вывести содержимое файла если он содержит текст на русском?просто для вывода содержимого файла на экран я написал такую функцию
если текст написан латинскими символами все работает отлично.А если на русском то выводит бред ,и то не полностью.как это исправить?
volvo
19.03.2008 21:33
Компилятор? Кодировка файла? Какой язык установлен в системе для Non-Unicode?
blackhard
19.03.2008 21:39
Цитата(volvo @ 19.03.2008 17:33)
Компилятор? Кодировка файла? Какой язык установлен в системе для Non-Unicode?
компилятор vs6 кодировка файла ansi.Какой язык установлен в системе для Non-Unicode? где посмотреть?
spill
19.03.2008 21:48
Программа запускается под DOS? Если да, то просто установи русификатор (то есть не установи, а запускай каждый раз). Например, rkalt. Ну, они в принципе, друг от друга ни чем не отличаются
volvo
19.03.2008 22:18
Цитата
где посмотреть?
Панель управления -> Региональные настройки -> последняя вкладка...
blackhard
19.03.2008 22:23
Цитата(volvo @ 19.03.2008 18:18)
Панель управления -> Региональные настройки -> последняя вкладка...
установлен русский
andriano
19.03.2008 22:24
Обычно в Windows используется кодовая страница 1251, в консоли и DOS - 866, а в Unix - КОИ-8. В виндах кодировка 1251 называется ANSI, а 866 - OEM.
Добавлено через 4 мин. все по поводу построчного чтения я уже разобрался
fgets(v,80,fz); c[i]=v; i++;
так работает блин не правиль работает в каждой строке c[i] одна и таже строка из файла.как правильно сделать вывод? о все теперь я нашел ошибку все заработало
volvo
19.03.2008 22:43
Вот так не пробовал:
char* c[10]; // для хранения строк char st[255]; // буфер для чтения строки из файла
int i = 0; while((fgets(st, 255, fz))) { c[i++] = strdup(st); }
?
blackhard
19.03.2008 22:45
Цитата(volvo @ 19.03.2008 18:43)
Вот так не пробовал:
char* c[10]; // для хранения строк char st[255]; // буфер для чтения строки из файла
int i = 0; while((fgets(st, 255, fz))) { c[i++] = strdup(st); }
?
да спасибо большое токо что сам так сделал
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.