Главная страница
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.066 c
3-1081411775
Ozone
2004-04-08 12:09
2004.05.02
Потоки + БД


14-1081249300
Rule
2004-04-06 15:01
2004.05.02
Как вы относитесь к ценам на буржуйские компоненты


3-1081168666
AOH
2004-04-05 16:37
2004.05.02
проверка isNull в кобмбобоксе ACCESS


1-1081806015
griban11
2004-04-13 01:40
2004.05.02
StringGrid


9-1069533365
MrAngel
2003-11-22 23:36
2004.05.02
Ги - опять glVertexPointerEXT ;-)