Announcement

Collapse
No announcement yet.

ASCII-Daten bzw. Dateien in ANSI umwandeln.Wie?

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • ASCII-Daten bzw. Dateien in ANSI umwandeln.Wie?

    Ich möchte ASCII Dateien von einer CNC-Maschine in meinem Programm einlesen bzw.Dateien über mein Programm zur Maschine schicken. Dazu muß ich die Daten von ASCII nach ANSI umwandeln oder umgedreht. Wie mache ich das?

  • #2
    <p>Hallo,<br>
    probiere einmal <b>OemToChar</b> und <b>CharToOem</b>.<br>
    <br>
    Näheres dazu findest Du in der Windows-SDK-Hilfe.<br>
    <br>
    Gruß Thomas</p&gt

    Comment


    • #3
      Ich mache das ganze im Delphi5. Könntest Du mir bitte ein Beispiel schreiben. Das wäre echt toll. Danke

      Comment


      • #4
        <p>Hallo,<br>
        <br>
        die Windows-SDK-Hilfe ist Bestandteil von Delphi. Zu finden im Delphi-Menü unter "Hilfe".<br>
        <br>
        Folgend ein Beispiel:<br>
        <pre>
        type
        TWandelTyp=(wtOemToAnsi, wtAnsiToOem);
        ...
        ...
        function WandleText(const aStr:String; aTyp:TWandelTyp):String;
        var szRes:PChar;
        begin
        szRes:=AllocMem(Length(aStr));
        try
        case aTyp of
        wtOemToAnsi:OemToChar(PChar(aStr), szRes);
        wtAnsiToOem:CharToOEM(PChar(aStr), szRes);
        end; // case
        SetLength(Result, StrLen(szRes));
        Result:=StrPas(szRes);
        finally
        FreeMem(szRes, Length(aStr));
        end; // try
        end; // WandleText
        </pre>
        <br>
        Aufrufen kannst Du die Funktion folgendermaßen:<br>
        <br>
        Label1.Caption:=WandleText('Dies ist ein Text mit den Umlauten a, ö, ü', der nach ASCII gewandelt wird..., wtAnsiToOem);<br>
        <br>
        Gruß Thomas<br>
        <br>
        Nochwas: das obige Beispiel funktioniert nur richtig, wenn in den Projektoptionen unter Compiler, "Huge-Strings" aktiviert ist.</p&gt

        Comment


        • #5
          <p>Hallo,<br>
          <br>
          die Windows-SDK-Hilfe ist Bestandteil von Delphi. Zu finden im Delphi-Menü unter "Hilfe".<br>
          <br>
          Folgend ein Beispiel:<br>
          <pre>
          type
          TWandelTyp=(wtOemToAnsi, wtAnsiToOem);
          ...
          ...
          function WandleText(const aStr:String; aTyp:TWandelTyp):String;
          var szRes:PChar;
          begin
          szRes:=AllocMem(Length(aStr));
          try
          case aTyp of
          wtOemToAnsi:OemToChar(PChar(aStr), szRes);
          wtAnsiToOem:CharToOEM(PChar(aStr), szRes);
          end; // case
          SetLength(Result, StrLen(szRes));
          Result:=StrPas(szRes);
          finally
          FreeMem(szRes, Length(aStr));
          end; // try
          end; // WandleText
          </pre>
          <br>
          Aufrufen kannst Du die Funktion folgendermaßen:<br>
          <pre>
          Label1.Caption:=WandleText('Dies ist ein Text mit den Umlauten a, ö, ü, der nach ASCII gewandelt wird...', wtAnsiToOem);
          </pre>
          Gruß Thomas<br>
          <br>
          Nochwas: das obige Beispiel funktioniert nur richtig, wenn in den Projektoptionen unter Compiler, "Huge-Strings" aktiviert ist.</p&gt

          Comment

          Working...
          X