Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi nach Delimiter ins Editfeld? (https://www.delphipraxis.net/26726-nach-delimiter-ins-editfeld.html)

Sunny123 28. Jul 2004 10:25


nach Delimiter ins Editfeld?
 
Hallö!
Also als erstes, ich hab schon gesucht, aber irgendwie nich wirklich was gefunden, was mir viel weiterhilft...

Ich hab folgendes Problem:
Ich habe eine Textdatei mit Inhalt der Form x|y|z
Nun möchte ich nur das x in einem editfeld erscheint. Bisher hab ichs allerdings nur hinbekommen, dass ab dem ersten | alles erscheint.

Delphi-Quellcode:
var
 delpos:integer;
 delimiter: char;
 line:string;
 mysl:tstrings;
begin
 mysl:=tstringlist.create;
 mysl.loadfromfile(fname);
 delimiter='|';
 line := mystringlist.strings[strtoint(edit1.text)]
 delpos:=pos(delimiter,line);
 edit4.text:=copy(line,delpos,length(line)-1);
end;
ich weiß ja, dass es auch lastdelimiter gibt, aber da kommt immer ne Fehlermeldung...

Könnt ihr mir da weiterhelfen?

Sunny

edit... Nich x is gemeint sondern z. Sorry, verschrieben!

Grumble 28. Jul 2004 10:39

Re: nach Delimiter ins Editfeld?
 
hi

du willst nur das erste? also was vorm ersten | steht?

dann muesste doch
Code:
edit4.text:=copy(line,1,delpos);
dort stehen oder hab ich was falsch vestanden? evtl. fehlt noch ne -1 oder +1 an delpos, habs nich getestet ...


gruss
grumble

Sunny123 28. Jul 2004 10:41

Re: nach Delimiter ins Editfeld?
 
verdammt bin ich blöd...*selberhau*
Ich meinte net das erste, ich nehm alles zurück. Es geht um das letzte folglich z´.
großes SORRY!
Sunny

Grumble 28. Jul 2004 11:03

Re: nach Delimiter ins Editfeld?
 
hm wenn genau bekannt ist wieviele | vorhanden sind kannst du die sache auch anders umgehen, indem du z.b. die ersten vorkommen aenderst, bei dir ist das vielleicht sogar gut, dann kannst du naemlich auch auf x und y einfacher zugreifen:

also ich meine:

bei dir sinds ja 2 |

Code:
//dein code
// die zwei zeilen reinhaengen
delpos:=pos(delimiter,line);
line[delpos]:=';'; // | mit ; ersetzt
// weiter dein code
delpos:=pos(delimiter,line);
edit4.text:=copy(line,delpos,length(line)-1);
gruss
grumble

Sunny123 28. Jul 2004 12:45

Re: nach Delimiter ins Editfeld?
 
Vielen lieben Dank!!! :-D
Hat super funktioniert!

Gruß Sunny


Alle Zeitangaben in WEZ +1. Es ist jetzt 18:30 Uhr.

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