Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi Memo-Feld mit Zeilenumbruch auslesen (https://www.delphipraxis.net/114248-memo-feld-mit-zeilenumbruch-auslesen.html)

Der.Kaktus 22. Mai 2008 08:01

Re: Memo-Feld mit Zeilenumbruch auslesen
 
Zitat:

Zitat von WIng2005
Habe ich schon probiert. Dummerweise taucht das Zeichen gleich mehrfach auf -> http://www.torsten-horn.de/techdocs/ascii.htm
Habe via

result:=StringReplace(s,chr(129),'',[rfReplaceAll]);

alle Möglichkeiten durch. Bringt nix.
Wie könne ich denn den ASCII-Code des Zeichens mal per Messagebox ausgeben?

MFG
Steffen

Hallo, vielleicht reicht die Funktion OEMToANSI um das Problem der Sonderzeichen zu loesen.

WIng2005 22. Mai 2008 08:31

Re: Memo-Feld mit Zeilenumbruch auslesen
 
@Der.Kaktus: hat leider nix gebracht..
@Nuclear-Ping: wieso 'ü' ?

Das Zeichen wird mit:

Delphi-Quellcode:
t:= JvMemo1.Lines[51];
for i := 1 to Length(t) do
     s:=s+(Format('%d', [Ord(t[i])]))+' , ';
showmessage(s);
als '2' ausgegeben. Trotzallem hilft StringReplace(s,#02,'',[rfReplaceAll]); nicht weiter.

MFG
Steffen

Nuclear-Ping 22. Mai 2008 08:42

Re: Memo-Feld mit Zeilenumbruch auslesen
 
Weil Chr (129) = ü ist.
Zitat:

Habe via

result:=StringReplace(s,chr(129),'',[rfReplaceAll]);

alle Möglichkeiten durch.
Und wie schon gesagt, der Kasten ist ein allgemeines Zeichen für ALLES, was nicht dargestellt werden kann. Das kann 00, 01, 02, 03, 255, ... sein.

mschaefer 22. Mai 2008 08:47

Re: Memo-Feld mit Zeilenumbruch auslesen
 
Kann sein, das StringReplace die Steuerzeichen einfach ausläßt (böse Falle...). Ok, dann halt per Fußmarsch durch den Dschungel

Delphi-Quellcode:
tmptext := Memo.lines.text;

for i:= 1 to length(tmptext) do
begin
   if (Ord(tmptext[i]) < 20) or (Ord(tmptext[i]) > 160 ) then tmptext[i] := ' '; // Steuer- zu Leerzeichen
end;

Memo.lines.text := tmptext;
Grüße // Martin

WIng2005 22. Mai 2008 09:04

Re: Memo-Feld mit Zeilenumbruch auslesen
 
Perfekt!!!! Funktioniert. Die Untergrenze habe ich mal auf 10 gesetzt,
damit die Zeilenumbrüche nicht verschwinden.

@Nuclear-Ping: bei mir ergibt showmessage(chr(129)) ein '' ...


Vielen Dank euch allen!!!

MFG
Steffen

Nuclear-Ping 22. Mai 2008 09:06

Re: Memo-Feld mit Zeilenumbruch auslesen
 
Also auf meinem deutschen Keyboard ist Alt+129 = ü ... Und was anderes macht Chr auch nicht? :gruebel:

Hast du vielleicht kein deutsches Charset / Layout oder so?

WIng2005 22. Mai 2008 09:16

Re: Memo-Feld mit Zeilenumbruch auslesen
 
mmmh eigentlich schon. In der Tabelle: http://www.torsten-horn.de/techdocs/ascii.htm ist doch die 129 auch kein ü .... Im Word wird jedoch auch
bei mir ein ü ausgegeben.... schon was komisch...

MFG
Steffen

Nuclear-Ping 22. Mai 2008 10:00

Re: Memo-Feld mit Zeilenumbruch auslesen
 
Doch, im erweiterten Zeichensatz ist 129 ein ü, auch in der Tabelle. ;)

127 = DEL
128 = Ç
129 = ü
130 = ...


Alle Zeitangaben in WEZ +1. Es ist jetzt 08:12 Uhr.
Seite 2 von 2     12   

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz