![]() |
String Variable
Hallo zusammen,
wie kann man den einen String aus einer .txt an eine Variable übergeben ich möchte z.B. aus einer .txt die Zeile 1 lesen bis das erste Leerzeichen kommt die zweite Variable soll dann das aufnehmen was nach dem Leerzeichen folgt. Gruss Ralf |
Re: String Variable
Lies die erste Zeile mit ReadLn ein und such dir mit pos das erste Leerzeichen. Dann kopierst du mit copy die Zeichen in die Variablen. Alternativ könntest du auch eine StringListe nehmen.
|
Re: String Variable
HI zusammen,
Der Inhalt der eingelesenen Datei ist ein array of string. (2dimensional) Wenn du die erste Zeile mit variable:=text[1]; speicherst und dann ueber eine while-Schleife die Zeile durchgehst und prueft, ob die aktuelle Stelle ein Leerzeichen ist, kannst du theoretisch schon mal das Leerzeichen ermitteln. Und dann ... oehm.. :gruebel: Kann aber sein, dass das das gleiche ist, wie mit readln() und pos(). Kenn mich mit denen nich so aus. :oops: Gruesse, |
Re: String Variable
Zitat:
|
Re: String Variable
nicht schön geht aber so
Delphi-Quellcode:
procedure ...
var datei: TStringList; datei_str: string; begin datei := TStringList.Create; datei.LoadFromFile ('DateiDatei.txt'); datei_str := datei[irgendeineZeile]; end; |
Re: String Variable
Hallo Ralf,
schade, dass du nichts zum Hintergrund deiner Frage geschrieben hast - es gibt sicher elegantere Wege um einen String an ein Programm zu übergeben, als eine Textdatei. Trotzdem hier eine Umsetzung mit ReadLn (hi luckie):
Delphi-Quellcode:
Du musst dann noch abfangen, dass die Datei nicht existiert (FileExists) oder nicht geöffnet werden kann (IoResult). Das Abschneiden am Zeilenbeginn kannst du so machen:
function PickLine(const fn: TFileName; index: Cardinal): String;
var tf: TextFile; begin AssignFile(tf, fn); Reset(tf); while not Eof(tf) and (index > 0) do begin ReadLn(tf); Dec(index); end; if not Eof(tf) and (index = 0) then ReadLn(tf, Result) else Result := ''; CloseFile(tf); end;
Delphi-Quellcode:
Grüße vom marabu
var
line: String; begin // erste Zeile hat index 0 line := PickLine('datei.txt', 0); Delete(line, 1, Pos(' ', line)); end; |
Re: String Variable
Hallo Marabu,
der Grund meiner Frage ist folgender ich möchte ein Programm schreiben bei dem man in einer einfachen .txt Datei einen Pfad zu einem Verzeichnis einträgt und ein Alter in Tagen diese Datei kann ja jeder bearbeiten auf Grund des eingetragenen Alters sollen alle Dateien in dem Verzeichnis gelöscht werden die älter sind als angegeben Bsp."c:\Daten\Muster 30" soll in dem angegebenen Verzeichniss alle Daten löschen die älter als 30 Tage sind diese beiden Werte Pfad und Tage möchte ich einlesen und an eine Variable übergeben und dann über FindFirst löschen. Gruss Ralf |
Re: String Variable
Dein Posting wird nicht gerade übersichtlicher, wenn du sechs Hauptsätze und drei Nebensätze ohne einen einzigen Punkt oder ein Komma verbindest :roll: .
Ist deine Frage denn nun beantwortet? |
Re: String Variable
Hallo Khabarakh,
die Frage ist beantwortet. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 23:01 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz