Autor Beitrag
jolomino
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 58



BeitragVerfasst: Fr 22.07.05 19:39 
hallo,
ich bräuchte mal ein wenig hilfe :D
mit folgendem code lade ich eine datei, die durch einen delimitter getrennt ist, die daten in ein listview. nun habe ich aber ein problem oder auch einen denkfehler. der erste komplette string von einem zum anderen delimitter wie bekomme ich diesen gegriffen? also im listview wird der string top angezeigt, nur leider bekomme ich diesen und alle folgenden nicht gegriffen. ich glaube ich drücke mich nicht so sehr deutlich aus...oder?

ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
// Laufe durch die Zeilen
    For i := 0 To pred(LoadList.Count) Do
    Begin
      PrevPos := 1;
      ActPos := 1;
      // 1 Position des Delimitters
      ActPos := PosEx(Delimitter, LoadList[i], succ(ActPos));
      // Erstelle Item
      With ListView.Items.Add Do
      Begin
        // Caption des neuen Items
          Caption := Copy(LoadList[i], PrevPos, (ActPos - PrevPos));
          PrevPos := succ(ActPos);
        // erzeuge für jeden gefundenen Delimitter ein SubItem
        Repeat
          ActPos := PosEx(Delimitter, LoadList[i], succ(ActPos));
          If ActPos <> 0 Then
            SubItems.Add(Copy(LoadList[i], PrevPos, (ActPos - PrevPos)))
          Else
            SubItems.Add(Copy(LoadList[i], PrevPos, Length(LoadList[i])));
          PrevPos := succ(ActPos);
        // Wenn ActPos = 0 (kein Delimitter gefunden) -> fertig
        Until ActPos = 0;

      End;
    End;


gruss jolomino
Alni
ontopic starontopic starontopic starontopic starofftopic starofftopic starofftopic starofftopic star
Beiträge: 205

Win 2000, XP, SuSe, Debian
D5 Prof, D7 Prof, Kylix
BeitragVerfasst: Fr 22.07.05 20:11 
Ich hoffe ich habe dich richtig verstanden:
Also ich nehme an du hast eine Datei bzw. einen String mit Delimittern den du in einzelne Strings aufteilen willst bzw. die einzelnen Strings einer Listbox zuweisen möchtest.

Dann ginge das etwa so:
ausblenden Delphi-Quelltext
1:
2:
3:
4:
//string s aus datei laden

Listbox.items.delimiter:=',';  //falls , dein Delimiter sein soll
Listbox.items.delimitedtext:=s;


und schon hast du einzelne Strings in deiner Listbox

_________________
MfG Alex