Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Как записать текстовый файл в DOS кодировке [D7, 95/98, XP]


abhtr ©   (2008-07-18 10:42:00) 

Необходимо записать информацию в текстовый файл в DOS кодировке.
Сейчас использую проверенную конструкцию

var
 MyTextFile : TextFile;  //файл для печати

 sss : string;
begin
...
    AssignFile(MyTextFile,sDirDoc+'\Spravka.rpt');
    Rewrite(MyTextFile);
...
   sss := 'выводимая информация, которая меняется';
   WriteLn(MyTextFile,sss);
...

 CloseFile(MyTextFile);

Но текст выводиться в кодировке Win, а у клиента на ПК только DOS (есть еще такие, и пока еще будут)
Так вот, для него надо, чтобы в файл записывалось в DOS кодировке.
Как это можно сделать?
Написать функцию преобразования в DOS, с использованием CharToOem?
Может есть более красивое решение?


Anatoly Podgoretsky   (2008-07-18 15:35:00) [1]


> Может есть более красивое решение?

Можно написать свою функцию переконвертирования, строк на 500 - красиво!


Anatoly Podgoretsky   (2008-07-18 15:29:00) [2]


> Но текст выводиться в кодировке Win, а у клиента на ПК только
> DOS (есть еще такие, и пока еще будут)

Стесняюсь спросить, а как же твоя программа работает в ДОС, или ты просто файл пересылаешь?


brother   (2008-07-18 11:12:00) [3]

> дос-то там , а мы-то здесь с делфи фаром и shelleкзекутом
> на винде.

упс, приношу извинения ;)


abhtr   (2008-07-18 11:11:00) [4]


> что там голый дос

Совершенно верно. :о(


Поросенок Винни-Пух   (2008-07-18 11:11:00) [5]

ну дос, ну голый и чего?
дос-то там , а мы-то здесь с делфи фаром и shelleкзекутом на винде.


brother   (2008-07-18 11:09:00) [6]

> [0] abhtr   (18.07.08 10:42)


> Но текст выводиться в кодировке Win, а у клиента на ПК только
> DOS (есть еще такие, и пока еще будут)


> [5] oldman ©   (18.07.08 10:51)


> [7] Поросенок Винни-Пух ©   (18.07.08 10:54)

те не читая

> [9] brother ©   (18.07.08 10:55)
> > Посылаем в окно фара
>
> фар в дос не работает.

понимаем, что там голый дос )


Поросенок Винни-Пух   (2008-07-18 11:03:00) [7]

угу? ;)

Что угу?
На четвертый день зоркий глаз заметил что в сарае не хватает четвертой стены?


brother   (2008-07-18 10:58:00) [8]

> Нет. Туда передается только файл.

угу? ;)


oldman   (2008-07-18 10:58:00) [9]

Word -> SaveAs

А то вдруг кому-то захочется этот файл и под win почитать...


Поросенок Винни-Пух   (2008-07-18 10:56:00) [10]

А типа делфи работает


brother   (2008-07-18 10:55:00) [11]

> Посылаем в окно фара

фар в дос не работает.


abhtr   (2008-07-18 10:55:00) [12]


> И твоя программа там запускается?

Нет. Туда передается только файл.


> CharToOem - правильное решение)

Хорошо. Спасибо что подтвердили мое решение.


Поросенок Винни-Пух   (2008-07-18 10:54:00) [13]

Более красивое решение:

Создаем файл в анси.
Делаем shellexecute фару.
Посылаем в окно фара нажатие alt + имя файла + F4
Делаем Ctrl + A
Делаем Ctrl + X
Делаем F8
Делаем Ctrl + V
Делаем F2
Делаем F10

Красивее просто не придумаешь.


brother   (2008-07-18 10:54:00) [14]

> И твоя программа там запускается?

логичный вопрос ;)


oldman   (2008-07-18 10:51:00) [15]


> а у клиента на ПК только DOS


И твоя программа там запускается?


brother   (2008-07-18 10:51:00) [16]

> Может есть более красивое решение?

CharToOem - правильное решение)


Свекровка   (2008-07-18 10:43:00) [17]

Ох уж эти эстеты с обостренным чувством прекрасного .....


Свекровка   (2008-07-18 10:43:00) [18]

Может есть более красивое решение?

<Цитата>


В смысле не требующее программирования?


Palladin   (2008-07-18 10:42:00) [19]

а CharToOem чем уродлив?


Наверх

Титульная страница Поиск, карта сайта Написать письмо