Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.05.02;
Скачать: CL | DM;

Вниз

Перекодировка текстового файла из DOS в WIN   Найти похожие ветки 

 
sniper ©   (2004-04-15 12:48) [0]

Уважаемые мастера Delphi!!! Подскажите, плиз, как перекодировать текстовый файл DOS-кодировки в текстовый файл WIN-кодировку. Если можно, приведите пример.
Заранее очень благодарен.


 
Smithson ©   (2004-04-15 12:51) [1]

OemToAnsi + F1


 
TUser ©   (2004-04-15 13:00) [2]

См в кладовке


 
Fay ©   (2004-04-15 14:07) [3]

procedure Jopa(FileName : string);
const
 BSZ = 4096;
var
 hr, hw, nr, nw : Cardinal;
 b : array[0..BSZ - 1] of Char;
begin
 hw := CreateFile(PChar(FileName), GENERIC_WRITE, FILE_SHARE_READ, nil, OPEN_EXISTING, 0, 0);
 if hw = INVALID_HANDLE_VALUE then
   begin
     ShowMessage("А ошибки обрабатывай сам 8)!");
     Exit;
   end;
 hr := CreateFile(PChar(FileName), GENERIC_READ, FILE_SHARE_READ or FILE_SHARE_WRITE, nil, OPEN_EXISTING, 0, 0);
 ReadFile(hr, b, BSZ, nr, nil);
 if nr <> 0 then
   repeat
     OemToAnsi(b, b); // в DOS
     //AnsiToOem(b, b); // из DOS-а
     WriteFile(hw, b, nr, nw, nil);
     ReadFile(hr, b, BSZ, nr, nil);
   until nr = 0;
 CloseHandle(hr);
 CloseHandle(hw);
end;

procedure TForm1.Button1Click(Sender : TObject);
begin
 Jopa("c:\1.txt");
end;


 
Fay ©   (2004-04-15 14:10) [4]

Ваще-то не плохо было бы
b : array[0..BSZ] of Char;
и вот так
...
b[nr] := #0;
OemToAnsi(b, b); // в DOS
....

8)


 
Тимохов ©   (2004-04-15 14:43) [5]

правильнее пользоваться oemtochar chartooem, т.к. ansi аналоги устарели.



Страницы: 1 вся ветка

Текущий архив: 2004.05.02;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.022 c
1-1082229051
[BAD]Angel
2004-04-17 23:10
2004.05.02
PopUpMenu


1-1081945120
siriusP
2004-04-14 16:18
2004.05.02
Почему сбрасываются свойства в компоненте?


1-1081882612
Влад Сташневский
2004-04-13 22:56
2004.05.02
Как присвоить один StringList другому


1-1082122683
ширинашрифта
2004-04-16 17:38
2004.05.02
каким образом подобрать ширину шрифта memo


6-1079071432
Ozone
2004-03-12 09:03
2004.05.02
Файл в сети