Autor Beitrag
ebs
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 213

Suse Linux 9.2, Win 98, Win NT, Win XP, Win for Workgroups, Win XP SP2, Dos 6.1
D3 Prof, D2005 PE, Delphi 2006 Prof.
BeitragVerfasst: Di 22.03.05 16:27 
Hallo!
Diesmal wollte ich keine Strings zwischen Simikolons lesen, sondern schreiben. Ich habe die Explode Methode nur so bearbeitet, dass man auch mit Explode die nächsten Zeilen mit an List hängt. Im Klartext:
ausblenden Quelltext
1:
2:
3:
4:
5:
6:
  
1;2;3;4 <---erste Zeile
5,6,7,8 <---zweite Zeile
.
.
.

Hier die modifizierte Explode:
ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
procedure explode(S: String; C: Char; List: TStrings);
Var
 I, J: Integer;
begin
 if S = '' then
  exit;
 J := 1;
 for I := 1 to length(S) do
  if S[I] = C then
  begin
   List.Add(Copy(S, J, I-J));
   J := I+1;
  end;
 List.Add(Copy(S, J, I-J));
end;


Jetzt will ich List auch wieder zurück schreiben. Leider kann Implode alles nur hintereinander hänger, und nicht wieder in Zeilen. Kann mir jemand helfen, wie ich nun mit Implode auch wieder zwischen Simikolons und Zeilen schreiben kann.
P.s. Die Anzahl der Simikolons in jeder Zeile sind zwar unterschiedlich, aber in jeder Datei gleich.
delfiphan
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 2684
Erhaltene Danke: 32



BeitragVerfasst: Di 22.03.05 22:36 
Hast du denn ne fixe Anzahl von Spalten pro Zeile?

Edit:
user profile iconebs hat folgendes geschrieben:
P.s. Die Anzahl der Simikolons in jeder Zeile sind zwar unterschiedlich, aber in jeder Datei gleich.

Dann musst du die Anzahl der Semikolons pro Zeile separat speichern. Oder sind die gegeben? Falls ja, in welcher Form?