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?
Announcement
Collapse
No announcement yet.
ASCII-Daten bzw. Dateien in ANSI umwandeln.Wie?
Collapse
X
-
<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>
Comment
-
<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>
Comment
Comment