Difference between revisions of "Stringlist/de"

From Lazarus wiki
Jump to navigationJump to search
m
m (Fixed syntax highlighting; wiki markup)
 
Line 1: Line 1:
 
{{Stringlist}}
 
{{Stringlist}}
<br>
+
 
 +
 
 
Zurück zu den [[File types/de|Dateitypen]].<br>
 
Zurück zu den [[File types/de|Dateitypen]].<br>
<br>
+
 
__TOC__
+
 
<br>
 
 
=Stringlist=
 
=Stringlist=
 +
 
Bei Stringlist wird eine Datei vollständig in den Arbeitsspeicher gelesen. Daher eignet sich Stringlist für Dateien kleinerer und mittlerer Grösse.
 
Bei Stringlist wird eine Datei vollständig in den Arbeitsspeicher gelesen. Daher eignet sich Stringlist für Dateien kleinerer und mittlerer Grösse.
 
Stringlist ist eine Möglichkeit Dateien einfach und schnell zu verarbeiten. Stringlist bietet sich für die Verarbeitung von Dateien an, die kleiner als ein MB sind.
 
Stringlist ist eine Möglichkeit Dateien einfach und schnell zu verarbeiten. Stringlist bietet sich für die Verarbeitung von Dateien an, die kleiner als ein MB sind.
 
Für die Verarbeitung der Datei wird die gesamte Datei in den Arbeitsspeicher geladen. Jede Zeile des Datensatzes wird dabei in ein eigenes Arrayelement eingelesen.<br>
 
Für die Verarbeitung der Datei wird die gesamte Datei in den Arbeitsspeicher geladen. Jede Zeile des Datensatzes wird dabei in ein eigenes Arrayelement eingelesen.<br>
 +
 
=Anlegen einer Datei=
 
=Anlegen einer Datei=
<syntaxhighlight>
+
 
 +
<syntaxhighlight lang="pascal">
 
procedure subStringlistDateiAnlegen();
 
procedure subStringlistDateiAnlegen();
 
var
 
var
Line 21: Line 24:
 
   // Fügt einen Datensatz inclusiv Zeilenumbruch an die Stringliste an
 
   // Fügt einen Datensatz inclusiv Zeilenumbruch an die Stringliste an
 
   strList.Add('xyz');
 
   strList.Add('xyz');
 +
 
   // Fügt einen Datensatz inclusiv Zeilenumbruch an die Stringliste an
 
   // Fügt einen Datensatz inclusiv Zeilenumbruch an die Stringliste an
 
   strList.Add('abcd');
 
   strList.Add('abcd');
Line 26: Line 30:
 
   // Schreibt die Datei auf die Festplatte
 
   // Schreibt die Datei auf die Festplatte
 
   strList.SaveToFile('D:\beispiel.txt');
 
   strList.SaveToFile('D:\beispiel.txt');
 +
 
   // Gibt den Speicher der Stringliste frei
 
   // Gibt den Speicher der Stringliste frei
 
   strList.Free;
 
   strList.Free;
 
end;
 
end;
 
</syntaxhighlight>
 
</syntaxhighlight>
<br>
+
 
 
=Einen Datensatz an eine vorhandene Datei anfügen=
 
=Einen Datensatz an eine vorhandene Datei anfügen=
<syntaxhighlight>
+
 
 +
<syntaxhighlight lang="pascal">
 
procedure subStringlistAnDateiAnfuegen();
 
procedure subStringlistAnDateiAnfuegen();
 
var
 
var
Line 49: Line 55:
 
   // Schreibt die Datei auf die Festplatte zurück
 
   // Schreibt die Datei auf die Festplatte zurück
 
   strList.SaveToFile('D:\beispiel.txt');
 
   strList.SaveToFile('D:\beispiel.txt');
 +
 
   // Gibt den Speicher der Stringliste frei
 
   // Gibt den Speicher der Stringliste frei
 
   strList.Free;
 
   strList.Free;
 
end;
 
end;
 
</syntaxhighlight>
 
</syntaxhighlight>
<br>
+
 
 
=Einen Datensatz suchen=
 
=Einen Datensatz suchen=
 +
 
==Methode 1==
 
==Methode 1==
<syntaxhighlight>
+
 
 +
<syntaxhighlight lang="pascal">
 
procedure subStringlistInDateiSuchen();
 
procedure subStringlistInDateiSuchen();
 
var
 
var
Line 71: Line 80:
 
   // Verwendung einer Zählschleife um den entsprechenden Datensatz zu finden
 
   // Verwendung einer Zählschleife um den entsprechenden Datensatz zu finden
 
   for intI := 0 to strList.Count -1 do
 
   for intI := 0 to strList.Count -1 do
  begin
+
    begin
// Suchen und verändern des Datensatzes
+
      // Suchen und verändern des Datensatzes
    if strList[intI]='abcd' then strList[intI]:='dcba';
+
      if strList[intI]='abcd' then  
  end;
+
        strList[intI]:='dcba';
 +
    end;
  
 
   // Schreibt die Datei auf die Festplatte zurück
 
   // Schreibt die Datei auf die Festplatte zurück
 
   strList.SaveToFile('D:\beispiel.txt');
 
   strList.SaveToFile('D:\beispiel.txt');
 +
 
   // Gibt den Speicher der Stringliste frei
 
   // Gibt den Speicher der Stringliste frei
 
   strList.Free;
 
   strList.Free;
 
end;
 
end;
 
</syntaxhighlight>
 
</syntaxhighlight>
<br>
+
 
 
==Methode 2==
 
==Methode 2==
<syntaxhighlight>
+
 
 +
<syntaxhighlight lang="pascal">
 
procedure subStringlistInDateiSuchen2();
 
procedure subStringlistInDateiSuchen2();
 
var
 
var
Line 99: Line 111:
 
   // Sucht einen Text, wird der Text nicht gefunden gibt die Suche -1 aus
 
   // Sucht einen Text, wird der Text nicht gefunden gibt die Suche -1 aus
 
   intI := strList.IndexOf('Text');
 
   intI := strList.IndexOf('Text');
 +
 
   // Ändert den Text unter zuhilfename des Index
 
   // Ändert den Text unter zuhilfename des Index
 
   if intI <> -1 then
 
   if intI <> -1 then
Line 105: Line 118:
 
   // Schreibt die Datei auf die Festplatte zurück
 
   // Schreibt die Datei auf die Festplatte zurück
 
   strList.SaveToFile('D:\beispiel.txt');
 
   strList.SaveToFile('D:\beispiel.txt');
 +
 
   // Gibt den Speicher der Stringliste frei
 
   // Gibt den Speicher der Stringliste frei
 
   strList.Free;
 
   strList.Free;
 
end;
 
end;
 
</syntaxhighlight>
 
</syntaxhighlight>
<br>
+
 
 
=Eine Datei alphabetisch sortieren=
 
=Eine Datei alphabetisch sortieren=
<syntaxhighlight>
+
 
 +
<syntaxhighlight lang="pascal">
 
procedure subStringlistInDateiSortieren();
 
procedure subStringlistInDateiSortieren();
 
var
 
var
Line 129: Line 144:
 
   // Schreibt die Datei auf die Festplatte zurück
 
   // Schreibt die Datei auf die Festplatte zurück
 
   strList.SaveToFile('D:\beispiel.txt');
 
   strList.SaveToFile('D:\beispiel.txt');
 +
 
   // Gibt den Speicher der Stringliste frei
 
   // Gibt den Speicher der Stringliste frei
 
   strList.Free;
 
   strList.Free;
 
end;
 
end;
 
</syntaxhighlight>
 
</syntaxhighlight>
<br>
+
 
<br>
+
 
 
--[[User:Olaf|Olaf]] 16:41, 23 October 2012 (UTC)
 
--[[User:Olaf|Olaf]] 16:41, 23 October 2012 (UTC)
[[Category:Tutorials/de]]{{AutoCategory}}
+
 
 +
[[Category:Tutorials/de]]
 +
[[Category:Pascal/de]]
 +
[[Category:Code Snippets/de]]
 +
{{AutoCategory}}

Latest revision as of 00:21, 16 January 2020

Deutsch (de) English (en) polski (pl)


Zurück zu den Dateitypen.


Stringlist

Bei Stringlist wird eine Datei vollständig in den Arbeitsspeicher gelesen. Daher eignet sich Stringlist für Dateien kleinerer und mittlerer Grösse. Stringlist ist eine Möglichkeit Dateien einfach und schnell zu verarbeiten. Stringlist bietet sich für die Verarbeitung von Dateien an, die kleiner als ein MB sind. Für die Verarbeitung der Datei wird die gesamte Datei in den Arbeitsspeicher geladen. Jede Zeile des Datensatzes wird dabei in ein eigenes Arrayelement eingelesen.

Anlegen einer Datei

procedure subStringlistDateiAnlegen();
var
  // TStringlist ist Bestandteil der Unit Classes
  strList: TStringList;
begin
  // Erstellt die Stringliste
  strList := TStringList.Create;

  // Fügt einen Datensatz inclusiv Zeilenumbruch an die Stringliste an
  strList.Add('xyz');

  // Fügt einen Datensatz inclusiv Zeilenumbruch an die Stringliste an
  strList.Add('abcd');

  // Schreibt die Datei auf die Festplatte
  strList.SaveToFile('D:\beispiel.txt');

  // Gibt den Speicher der Stringliste frei
  strList.Free;
end;

Einen Datensatz an eine vorhandene Datei anfügen

procedure subStringlistAnDateiAnfuegen();
var
  // TStringlist ist Bestandteil der Unit Classes
  strList: TStringList;
begin
  // Erstellt die Stringliste
  strList := TStringList.Create;

  // Liest eine Datei vollständig ein
  strList.LoadFromFile('D:\beispiel.txt');

  // Fügt einen Datensatz inclusiv Zeilenumbruch an die Stringliste an
  strList.Add('Text');

  // Schreibt die Datei auf die Festplatte zurück
  strList.SaveToFile('D:\beispiel.txt');

  // Gibt den Speicher der Stringliste frei
  strList.Free;
end;

Einen Datensatz suchen

Methode 1

procedure subStringlistInDateiSuchen();
var
  // TStringlist ist Bestandteil der Unit Classes
  strList: TStringList;
  intI: Integer;
begin
  // Erstellt die Stringliste
  strList := TStringList.Create;

  // Liest eine Datei ein
  strList.LoadFromFile('D:\beispiel.txt');

  // Verwendung einer Zählschleife um den entsprechenden Datensatz zu finden
  for intI := 0 to strList.Count -1 do
    begin
      // Suchen und verändern des Datensatzes
      if strList[intI]='abcd' then 
        strList[intI]:='dcba';
    end;

  // Schreibt die Datei auf die Festplatte zurück
  strList.SaveToFile('D:\beispiel.txt');

  // Gibt den Speicher der Stringliste frei
  strList.Free;
end;

Methode 2

procedure subStringlistInDateiSuchen2();
var
  // TStringlist ist Bestandteil der Unit Classes
  strList: TStringList;
  intI: Integer;
begin
  // Erstellt die Stringliste
  strList := TStringList.Create;

  // Liest eine Datei ein
  strList.LoadFromFile('D:\beispiel.txt');

  // Sucht einen Text, wird der Text nicht gefunden gibt die Suche -1 aus
  intI := strList.IndexOf('Text');

  // Ändert den Text unter zuhilfename des Index
  if intI <> -1 then
    strList[intI]:='txeT';

  // Schreibt die Datei auf die Festplatte zurück
  strList.SaveToFile('D:\beispiel.txt');

  // Gibt den Speicher der Stringliste frei
  strList.Free;
end;

Eine Datei alphabetisch sortieren

procedure subStringlistInDateiSortieren();
var
  // TStringlist ist Bestandteil der Unit Classes
  strList: TStringList;
  intI: Integer;
begin
  // Erstellt die Stringliste
  strList := TStringList.Create;

  // Liest eine Datei ein
  strList.LoadFromFile('D:\beispiel.txt');

  // Sortiert die Stringliste Alphabetisch
  strList.Sort;

  // Schreibt die Datei auf die Festplatte zurück
  strList.SaveToFile('D:\beispiel.txt');

  // Gibt den Speicher der Stringliste frei
  strList.Free;
end;


--Olaf 16:41, 23 October 2012 (UTC)