OEM2Ansi/de

From Free Pascal wiki
Jump to navigationJump to search

Deutsch (de)

Zurück zur Seite Code Beispiele.

Dieser Artikel beschäftigt sich mit der Windowsprogrammierung.
Das Unterprogramm konvertiert eine Datei vom OEM-Zeichensatz (DOS und Windowskonsole) in den ANSI-Zeichensatz.

uses
  Windows, FileUtil, Classes, SysUtils, ...;

  ...

procedure subOEM2Ansi(const conStrQuellDateiname, conStrZielDateiname: string);
// konvertiert eine Datei mit Ansi-Zeichensatz in den OEM-Zeichensatz
var
  txtQuelldatei: file of char;
  txtZieldatei: file of char;
  chrZeichen: char;
  strPuffer: string;

begin

  assignfile(txtQuelldatei, UTF8ToSys(conStrQuellDateiname));
  assignfile(txtZieldatei, UTF8ToSys(conStrZielDateiname));
  Rewrite(txtZieldatei);
  Reset(txtQuelldatei);
  Reset(txtZieldatei);

  while not EOF(txtQuelldatei) do
  begin

    Read(txtQuelldatei, chrZeichen);
    strPuffer := chrZeichen;
    // Übersetzt den Zeichensatz OEM in den Zeichensatz Ansi
    OemToCharBuff(PChar(strPuffer), PChar(strPuffer), Length(strPuffer));
    Write(txtZieldatei, char(strPuffer[1]));

  end;

  closefile(txtQuelldatei);
  closefile(txtZieldatei);

end;


Aufruf unter Windows:

  subOEM2Ansi('E:\Test_alt.txt', 'E:\Test_neu.txt');