AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

mehrere zeilen auslesen

Ein Thema von whiteshark · begonnen am 7. Mai 2005 · letzter Beitrag vom 7. Mai 2005
Antwort Antwort
Benutzerbild von whiteshark
whiteshark

Registriert seit: 4. Dez 2003
Ort: Cottbus
222 Beiträge
 
Delphi 2005 Personal
 
#1

mehrere zeilen auslesen

  Alt 7. Mai 2005, 17:03
Moin Leute,
ich bin gerade dabei das externe speichern und einlesen zu üben. mit einer Zeile aus einer Datei klappt es ja schon, aber wie kann ich mehrere Zeilen auslesen?
Delphi-Quellcode:
function einlesen;
var File:textfile;
var s:String;
begin
AssignFile(File, 'test.dat');
Reset(File);
Readln(File,s);
memo1.Lines[0] :=s;
CloseFile(File);
Delphi-Quellcode:
function speichern;
var File:textfile;
var s:string;
begin
AssignFile(File, 'test.dat');
Rewrite(File);
s:=memo1.lines[0];
writeln(File,s);
CloseFile(File);
Wie kann ich jetzt mehrere Zeilen auslesen?
Men are born ignorant, not stupid; they are made stupid by education. - Bertrand Russell

I cannot teach anybody anything, i can only make them think. - Socrates
  Mit Zitat antworten Zitat
Benutzerbild von Nikolas
Nikolas

Registriert seit: 28. Jul 2003
1.528 Beiträge
 
Delphi 2005 Personal
 
#2

Re: mehrere zeilen auslesen

  Alt 7. Mai 2005, 17:09
Einfach readln mehrmals hintereinander ausführen.

Delphi-Quellcode:
readln(Afile,a);
readln(Afile,b);
usw.

Und besser keinen reservierten Ausdruck wie 'File' benutzen.
Erwarte das Beste und bereite dich auf das Schlimmste vor.
  Mit Zitat antworten Zitat
Waldteufel
(Gast)

n/a Beiträge
 
#3

Re: mehrere zeilen auslesen

  Alt 7. Mai 2005, 17:12
Hi.

Oder, um alles zu lesen/schreiben :

Delphi-Quellcode:
procedure Speichern;
var
  i : integer
  f : file;
begin
  Assign(f, 'test.dat');
  Rewrite(f);
  for i := 0 to Memo1.Lines.Count - 1 do
    WriteLn(f, Memo1.Lines[i]);
  Close(f);
end;

procedure Laden;
var
  s : string;
  f : file;
begin
  Assign(f, 'test.dat');
  Reset(f);
  while not eof(f) do
  begin
    ReadLn(f, s);
    Memo1.Lines.Add(s);
  end;
  Close(f);
end;
  Mit Zitat antworten Zitat
Keldorn

Registriert seit: 6. Mär 2003
Ort: Meißen
876 Beiträge
 
Delphi 10.1 Berlin Professional
 
#4

Re: mehrere zeilen auslesen

  Alt 7. Mai 2005, 17:15
Hallo

Zitat:
AssignFile(File, 'test.dat');
so eine relative Pfadangabe wird dir irgendwann große Probleme bereiten.

Zitat:
memo1.Lines[0] :=s;
lösch das memo am Anfang mit memo.clear und füge die neuen Zeilen mit memo.lines.add hinzu. Bei deiner drirektzuweisung mußt Du dir sicher sein, daß wirklich so viele Zeilen exisieren, wenn nicht, siehst du eine AV.

nutze die eof-Funktion in einer While-Anweisung, um jede Zeile auszulesen.

mit memo1.lines.loadfromfile gehts natürlich noch schneller

Mfg Frank

Lükes Grundlage der Programmierung:
Es wird nicht funktionieren
(Murphy)
  Mit Zitat antworten Zitat
Benutzerbild von whiteshark
whiteshark

Registriert seit: 4. Dez 2003
Ort: Cottbus
222 Beiträge
 
Delphi 2005 Personal
 
#5

Re: mehrere zeilen auslesen

  Alt 7. Mai 2005, 17:19
@Toxman: geht aber nicht so richtig!
Men are born ignorant, not stupid; they are made stupid by education. - Bertrand Russell

I cannot teach anybody anything, i can only make them think. - Socrates
  Mit Zitat antworten Zitat
Benutzerbild von fantotal
fantotal

Registriert seit: 20. Jun 2004
Ort: Mönchengladbach
43 Beiträge
 
Delphi 7 Enterprise
 
#6

Re: mehrere zeilen auslesen

  Alt 7. Mai 2005, 17:20
3 Leute haben dir nun einen Vorschlag gemacht und du sagst nur: "Geht aber nicht so richtig!"

Was geht nicht richtig?
So long,
Sebastian
-> Schultalk.de
  Mit Zitat antworten Zitat
Keldorn

Registriert seit: 6. Mär 2003
Ort: Meißen
876 Beiträge
 
Delphi 10.1 Berlin Professional
 
#7

Re: mehrere zeilen auslesen

  Alt 7. Mai 2005, 17:21
Zitat von whiteshark:
geht aber nicht so richtig!
geniale Antwort! Du willst uns nicht zufälligerweise auch mitteilen WAS nicht geht? Hellsehen macht sich heut gaaanz schlecht.

Lükes Grundlage der Programmierung:
Es wird nicht funktionieren
(Murphy)
  Mit Zitat antworten Zitat
Benutzerbild von whiteshark
whiteshark

Registriert seit: 4. Dez 2003
Ort: Cottbus
222 Beiträge
 
Delphi 2005 Personal
 
#8

Re: mehrere zeilen auslesen

  Alt 7. Mai 2005, 18:27
Sorry!
War mit meiner Antwort etwas kurz. Aber die Variante von Toxman funktioniert bei mir nicht so richtig.
Men are born ignorant, not stupid; they are made stupid by education. - Bertrand Russell

I cannot teach anybody anything, i can only make them think. - Socrates
  Mit Zitat antworten Zitat
Christian Seehase
(Co-Admin)

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.116 Beiträge
 
Delphi 11 Alexandria
 
#9

Re: mehrere zeilen auslesen

  Alt 7. Mai 2005, 18:32
Moin Whiteshark,

mit der Antwort hast Du nich ein bisschen mehr ausgesagt, als mit der vorigen...
Tschüss Chris
Die drei Feinde des Programmierers: Sonne, Frischluft und dieses unerträgliche Gebrüll der Vögel.
Der Klügere gibt solange nach bis er der Dumme ist
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 06:35 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz