![]() |
Re: Bestimmte Bereiche aus Datei auslesen und in neue schrei
Zitat:
@Oli.1010: Also, nimm erstmal das
Delphi-Quellcode:
aus der Schleife und setz es vor dein letztes "end;".
dateiliste.free;
inhalt.free; Ich kann nicht hellsehen und weiß auch nicht, welchen Wert "inhalt.text" zur Laufzeit hat. Delphi hat einen hübschen Debugger (wenn ich doch bloß wüsste, welche Delphi - Version du hast...). Benutze den doch einfach mal. Mich würde nämlich zu gerne interessieren, was in "inhalt.text" drinnesteht. mfg Daniel [Edit 1] Narf... Das Ding hieß "inhalt.text", nicht "inhalt.txt" :wall: [/Edit 1] [Edit 2] Huch... Die beiden Posts vor mir habe ich ja gar net gesehen... [/Edit 2] |
Re: Bestimmte Bereiche aus Datei auslesen und in neue schrei
:roll: :roll: :roll:
Zitat:
Probier also mal das:
Delphi-Quellcode:
[edit] Ich schreibe zu langsam :mrgreen: .
for i:=0 to dateiliste.Count-1 do
begin inhalt.LoadFromFile(dateiliste[i]); if Pos(ComboBox1.Text, inhalt.Text) > 0 then //statt inhalt[0] inhalt.Text := copy(inhalt.text,0,Pos('',inhalt.text)-1)+copy(inhalt.text,Pos('',inhalt.text)+21,Length(inhalt.text)); // hier verstehe ich gar nichts, "+21" ? Das sieht so aus, als ob du alles außer den begin-end Teil kopierst AssignFile(f, dateiliste[i]); //das und folgendes sollte wohl auch in den if-Zweig Rewrite(f); Writeln(f, '<html>'); Writeln(f, '<head>'); Writeln(f, '<title>test</title> '); Writeln(f, '</head>'); Writeln(f, '<body>'); Writeln(f, ''); Writeln(f, ' '+inhalt.Text+' '); Writeln(f, ''); Writeln(f, '</body>'); Writeln(f, '</html>'); closeFile(f); ShowMessage(' in' +dateiliste[i]+ 'erfolgreich überarbeitet.') ; //statt +Combobox1.Text+ end; //wichtig, folgendes gehört nicht mehr zur Schleife dateiliste.free; inhalt.free; end; |
Re: Bestimmte Bereiche aus Datei auslesen und in neue schrei
Zitat:
Delphi-Quellcode:
Zu finden auf
procedure GetFilesInDirectory(Directory: String; const Mask: String;
List: TStrings; WithSubDirs, ClearList: Boolean); procedure ScanDir(const Directory: String); var SR: TSearchRec; begin if FindFirst(Directory + Mask, faAnyFile - faDirectory, SR) = 0 then try repeat List.Add(Directory + SR.Name) until FindNext(SR) <> 0; finally FindClose(SR); end; if WithSubDirs then begin if FindFirst(Directory + '*.*', faAnyFile, SR) = 0 then try repeat if (SR.Attr = faDirectory) and (SR.Name <> '.') and (SR.Name <> '..') then ScanDir(Directory + SR.Name + '\'); until FindNext(SR) <> 0; finally FindClose(SR); end; end; end; begin List.BeginUpdate; try if ClearList then List.Clear; if Directory = '' then Exit; if Directory[Length(Directory)] <> '\' then Directory := Directory + '\'; ScanDir(Directory); finally List.EndUpdate; end; end; ![]() |
Re: Bestimmte Bereiche aus Datei auslesen und in neue schrei
Mein GetFilesInDirectory
Delphi-Quellcode:
Habe jetzt
procedure GetFilesInDirectory(ADirectory: string; AMask: String; AList: TStrings; ARekursiv: Boolean);
var SR: TSearchRec; begin if (ADirectory<>'') and (ADirectory[length(ADirectory)]<>'\') then ADirectory:=ADirectory+'\'; if (FindFirst(ADirectory+AMask,faAnyFile-faDirectory,SR)=0) then begin repeat if (SR.Name<>'.') and (SR.Name<>'..') and (SR.Attr<>faDirectory) then AList.Add(ADirectory+SR.Name) until FindNext(SR)<>0; FindClose(SR); end; if ARekursiv then if (FindFirst(ADirectory+'*.*',faDirectory,SR)=0) then begin repeat if (SR.Name<>'.') and (SR.Name<>'..') then GetFilesInDirectory(ADirectory+SR.Name,AMask,AList,True); until FindNext(SR)<>0; FindClose(SR); end; end;
Delphi-Quellcode:
aus der Schleife herausgenommen.
dateiliste.free;
inhalt.free; Jetzt führt er Änderungen an den HTML-Dateien durch, aber wie Khabarakh schon sagte, kopiert er alles bis auf den Teil den ich eigentlich nur kopiert haben möchte. :? Aber ich will ja nur den teil zwischen den und kopieren? |
Re: Bestimmte Bereiche aus Datei auslesen und in neue schrei
jemand ne idee wie ich den spieß umdrehen könnte?
|
Re: Bestimmte Bereiche aus Datei auslesen und in neue schrei
Delphi-Quellcode:
Sollte stimmen.
inhalt.Text := Copy(inhalt.text, Pos('', inhalt.text)), Copy(inhalt.text, Pos('', inhalt.text) + Length(''));
|
Re: Bestimmte Bereiche aus Datei auslesen und in neue schrei
da bringt er jetzt leider folgende Fehlermeldung beim Kompilieren:
"Nicht genügend wirkliche Parameter" |
Re: Bestimmte Bereiche aus Datei auslesen und in neue schrei
Hups.
Delphi-Quellcode:
inhalt.Text := Copy(inhalt.text, Pos('', inhalt.text), Pos('', inhalt.text) + Length(''));
|
Re: Bestimmte Bereiche aus Datei auslesen und in neue schrei
hey vielen Dank für die schnelle Hilfe. :thumb:
Jetzt wir zwar der Text der zwischen den beiden markern steht kopiert und in die anderen html-dateien übertragen, aber die 2 marker stehen dann auch noch in den neuen seiten außerdem wird der quelltext hinter auch kopiert (genau 179 zeichen). Gibt es ne möglichkeit nur die zeichen zwischen den beiden markern und zu kopieren? |
Re: Bestimmte Bereiche aus Datei auslesen und in neue schrei
Schon wieder hups. Copy nimmt nicht Anfang und Ende, sondern Anfang und Länge als Parameter an:
Delphi-Quellcode:
Oder etwas übersichtlicher:
inhalt.Text := Copy(inhalt.text, Pos('', inhalt.text) + Length(''), Pos('', inhalt.text) - Pos('', inhalt.text) - Length(''));
Delphi-Quellcode:
const KeyWord1 = '';
KeyWord2 = ''; var NavigationBegin: Integer; begin [...] NavigationBegin := Pos(KeyWord1, inhalt.Text) + Length(KeyWord1); inhalt.Text := Copy(inhalt.Text, NavigationBegin, Pos(KeyWord2, inhalt.Text) - NavigationBegin); |
Alle Zeitangaben in WEZ +1. Es ist jetzt 14:35 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