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

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

перекодировка текста DOS в ANSI [D1, Win95/98]


оля ©   (2002-05-21 02:47:00) 

Помогите написать прогу для чтения текста написанного под DOS ?


PONTIY   (2002-05-21 09:05:00) [1]

А еще можно сделать так:


Function DecDosToWin(var r:string): String; //DOS to WIN
var
sDOS, sWIN: string;
n: integer;

begin
sDOS := " _Ў_ў"__¤"_:ср


VAleksey   (2002-05-21 07:07:00) [2]

CharToOem и
OemToChar
чем не устраивают ?


XOY   (2002-05-21 05:41:00) [3]

Ну вот фрагменты порцедур перекодировки из моей программы. Вроде работают.


procedure TForm1.prToDos(Sender: TObject); {Windows -> Dos}
begin
.......
AssignFile(F,FName);
AssignFile(F1,Fname1"); {FName, FName1: string}
reset(F);
rewrite(F1);
While not eof(F) do begin
read(F,buf); {buf: byte}
case buf of
{в 5 следующих строчках и есть сам олгаритм}
224..239: buf:= buf - 64;
240..255: buf:= buf - 16;
192..223: buf:= buf - 64;
184: buf:= 241;
168: buf:= 240
end;
write(F1,buf);
end;
closefile(F);
closefile(F1);
end;
end;



procedure TForm1.prToWindows(Sender: TObject); {Dos -> Windows}
begin
.........
AssignFile(F,FName);
AssignFile(F1,FName1");
reset(F);
rewrite(F1);
While not eof(F) do begin
read(F,buf);
case buf of
128..159: buf:= buf + 64;
160..175: buf:= buf + 64;
224..239: buf:= buf + 16;
240: buf:= 168;
241: buf:= 184;
end;
write(F1,buf);
end;
closefile(F);
closefile(F1);
end;


Наверх

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