Avatar billede lanstorp Nybegynder
26. november 2001 - 08:40 Der er 2 kommentarer og
1 løsning

str med chr(10) til array

Jeg har en lang string med flere linier i adskildt af en <Character 10 = line-feed character>. Det kunne se sådan ud:
str := \'del1 | del2 | del3 | del4\'
Hvis jeg skriver stringen ud i en message dialog bliver den på fire linier. Men hvis den bliver skrevet ud i en listbox eller stringgrid kommer hele stringen selvfølgelig til at stå i den første plads i kontrollen (dvs. 0\'te plads) med hver delstring adskildt af |.
Spørgsmålet er: hvad er den nemmeste måde at få str lagt over i et array. Der må skulle loop igennem str indtil der ikke er flere | tilbage i str. Hvert loop fyldes så over i arrayet.
/Jakob
Avatar billede morten_s Nybegynder
26. november 2001 - 08:48 #1
brug en pos til at finde dine delstrenge, og derefter en copy til at kopiere dem ud


function Pos(Substr: string; S: string): Integer;
function Copy(S; Index, Count: Integer): string;









Avatar billede unclebug Nybegynder
26. november 2001 - 10:33 #2
Hvis det ikke behøver at gå superstærkt, så gør sådan:

List:TStringList;

List := TStringList.Create;
List.Text := StringReplace(DinStr, \'|\', #13, [rfReplaceAll]);

Så har du dem i List.
Avatar billede lanstorp Nybegynder
26. november 2001 - 10:36 #3
Takker begge
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester