AGB  ·  Datenschutz  ·  Impressum  







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

Textdatei lesen und Inhalt in neuer abspeichern

Ein Thema von MutterGans · begonnen am 31. Aug 2011 · letzter Beitrag vom 31. Aug 2011
Antwort Antwort
Seite 1 von 2  1 2      
MutterGans

Registriert seit: 31. Aug 2011
4 Beiträge
 
#1

Textdatei lesen und Inhalt in neuer abspeichern

  Alt 31. Aug 2011, 15:05
Hallo,

ich würde gerne aus einer bereits bestehenden Textdatei auf meinem PC, per Delphi, eine bestimmte Anzahl an Zeilen auslesen und diesen Inhalt in eine neue Textdatei speichern. Ich hab mir schon ein paar Gedanken gemacht aber nie wirklich einen ansatz gefunden der mich zu Ansätzen bringt. Vielleicht kann man die Anzahl der Zeilen mit einer for-Schleife festlegen?!?
  Mit Zitat antworten Zitat
ensaron

Registriert seit: 29. Aug 2008
Ort: 10369 Berlin
63 Beiträge
 
Delphi 10.3 Rio
 
#2

AW: Textdatei lesen und Inhalt in neuer abspeichern

  Alt 31. Aug 2011, 15:29
Such mal in der Delphi Hilfe nach "Standardroutinen Eingabe - Ausgabe"

Und ja, das Auslesen einer bestimmten Anzahl von Zeilen kannst du über eine for-Schleife umsetzen.
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.537 Beiträge
 
Delphi 11 Alexandria
 
#3

AW: Textdatei lesen und Inhalt in neuer abspeichern

  Alt 31. Aug 2011, 15:30
Hallo und Willkommen in der DP ,

Du könntest die Datei im Ganzen in einer TStringlist einlesen, alle Zeilen ab X daraus löschen und anschließend die Stringliste wieder abspeichern oder Du nimmst die "alten" Routinen AssignFile, Reset, Rewrite, WriteLn, ReadLn und CloseFile, um zeilenweise zu lesen und zu schreiben.
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
MutterGans

Registriert seit: 31. Aug 2011
4 Beiträge
 
#4

AW: Textdatei lesen und Inhalt in neuer abspeichern

  Alt 31. Aug 2011, 15:48
Hallo DeddyH,

ich hab das schonmal mit den alten Routinen versucht hat aber nicht so geklappt! Ich weiß nicht wie ich mich bei dem einlesen eine bestimmte textdatei auswählen kann auf die er sich bezieht!
Hat vielleicht jemand n kleines Beispiel für mich? Vielleicht n paar Zeilen wie das aussehen könnte?!
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.537 Beiträge
 
Delphi 11 Alexandria
 
#5

AW: Textdatei lesen und Inhalt in neuer abspeichern

  Alt 31. Aug 2011, 15:54
Den Namen der Datei gibst Du bei AssignFile als 2. Parameter an. Du musst also 2 mal AssignFile aufrufen, einmal für die Quell- und einmal für die Zieldatei. Dann wird die Quelldatei zum Lesen, die Zieldatei zum Schreiben geöffnet (Reset bzw. Rewrite). Nun noch Zeile aus Quelle lesen (ReadLn) und in Ziel schreiben (WriteLn). Zum Schluss beide wieder schließen (CloseFile). Dazu noch ein wenig Fehlerbehandlung und fertig.
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.851 Beiträge
 
Delphi 11 Alexandria
 
#6

AW: Textdatei lesen und Inhalt in neuer abspeichern

  Alt 31. Aug 2011, 15:56
Besser wäre es aber die Funktionlität von Stringlisten (LoadFromFile, SaveToFile) zu verwenden.
Markus Kinzler
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.537 Beiträge
 
Delphi 11 Alexandria
 
#7

AW: Textdatei lesen und Inhalt in neuer abspeichern

  Alt 31. Aug 2011, 15:58
Kommt darauf an. Wenn ich von einer 1 GB-Textdatei nur 2 Zeilen brauche (z.B. 80 Byte), dann wäre es ja Blödsinn, sie erst komplett in eine Stringliste zu laden.
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
MutterGans

Registriert seit: 31. Aug 2011
4 Beiträge
 
#8

AW: Textdatei lesen und Inhalt in neuer abspeichern

  Alt 31. Aug 2011, 16:31
Dsa ich bei Delphi n absoluter Neuling bin, wäre es nett wenn jemand mir nen Beispiel-Code hier rein stellen könnte!
Wie der Code so ungefähr gegliedert werden muss, welche Variablen ich dazu noch brauche usw.
  Mit Zitat antworten Zitat
Benutzerbild von stahli
stahli

Registriert seit: 26. Nov 2003
Ort: Halle/Saale
4.336 Beiträge
 
Delphi 11 Alexandria
 
#9

AW: Textdatei lesen und Inhalt in neuer abspeichern

  Alt 31. Aug 2011, 16:44
Du könntest zwei Memos verwenden.
Mit Memo1.LoadFromFile kannst Du eine Datei laden.
Dann kannst Du per Memo1.Lines[X] bestimmte Zeilen in Memo2.Linies kopieren und dann mit Memo2.SaveToFile den neuen Text speichern.

Das ist ein einfacher Weg, aber für den Anfang m.E. nicht falsch.
Stahli
http://www.StahliSoft.de
---
"Jetzt muss ich seh´n, dass ich kein Denkfehler mach...!?" Dittsche (2004)
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.851 Beiträge
 
Delphi 11 Alexandria
 
#10

AW: Textdatei lesen und Inhalt in neuer abspeichern

  Alt 31. Aug 2011, 16:46
Stringlist:
Delphi-Quellcode:
var
 sl: TStrings;
...
begin
    sl := TStringList.Create;
    sl.LoadFromFile( '<Quelldatei>');
    ...
    sl.SaveToFile( 'Zieldatei>');
   ...
end;
I/O Routinen:
Delphi-Quellcode:
var
  tfQuelle, tfZiel: TextFile;
  s: string;
...
begin
    AssignFile( tfQuelle, '<Quelldatei>');
    AssignFile( tfZiel, '<Zieldatei>');
    Reset( tfQuelle); //Öffnet zum Lesen
    Rewrite( tfZiel); //Öffnet zum Schreiben
    s := Readln( tf); //Liest eine Zeile ein
    Writeln (tfZiel, s); //Schreibt eine Zeile
    ...
    CloseFile( tfZiel);
    CloseFile( tgQuelle);
end;
Markus Kinzler
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


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