Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Problem mit FindFirst, FindNext und TFileStream (https://www.delphipraxis.net/136149-problem-mit-findfirst-findnext-und-tfilestream.html)

AJ_Oldendorf 24. Jun 2009 13:57

Re: Problem mit FindFirst, FindNext und TFileStream
 
Habs jetzt so angepasst und in FehlerCnt steht am Ende eine 2...

Delphi-Quellcode:
procedure TForm1.Button3Click(Sender: TObject);
var
  F : TSearchRec;
  TmpStream : TFileStream;
  aCardinal : Cardinal;
  Success  : Boolean;
  FehlerCnt : Integer;
begin
  FehlerCnt := 0;
  try
    if FindFirst('C:\*.txt', faAnyFile, F)= 0 then
    begin
      Success := True;

      while Success do
      begin
        //Mach irgendwas mit der Datei...
        TmpStream := Nil;
        try
          { Versuchen, die Datei öffnend zu lesen }
          TmpStream := TFileStream.Create (F.Name, fmOpenRead);
        except
          Inc(FehlerCnt);
        end;

        Success := FindNext(F) = 0;
      end;
    end;
  finally
    FindClose(F);
  end;
end;
F.Name liefert im ersten Durchlauf 1.txt und im zweiten Durchlauf 2.txt.
Sieht also richtig aus.

Viele Grüße
Alex

himitsu 24. Jun 2009 13:59

Re: Problem mit FindFirst, FindNext und TFileStream
 
ich denk wir haben uns in dem einem Thread geeinigt allen nur noch fertige Codes zu geben? :gruebel:

Am Besten hier melden sich auch noch ein paar Lehrer an und geben uns die Hausaufgaben, damit wir's einfacher haben, wenn wer fragt :angel2:


Nja, mal im Ernst ... in .Name steht halt nur der Dateiname drin und sonst nix, also immer schon den Pfad mit dazupacken.

[add]
Zitat:

Zitat von AJ_Oldendorf
F.Name liefert im ersten Durchlauf 1.txt und im zweiten Durchlauf 2.txt.
Sieht also richtig aus.

also quasi so :zwinker:
Code:
procedure TForm1.Button2Click(Sender: TObject);
    SL.SaveToFile([color=#ff0000][b]'C:\1.txt'[/b][/color]);

procedure TForm1.Button3Click(Sender: TObject);
    if FindFirst('C:\*.txt', faAnyFile, F)= 0 then
        TmpStream := TFileStream.Create([color=#ff0000][b]'1.txt'[/b][/color], fmOpenRead);

AJ_Oldendorf 24. Jun 2009 14:01

Re: Problem mit FindFirst, FindNext und TFileStream
 
Alles klar,
ich teste das mal :-)

Mist, das hatte ich gar nicht gesehen... :wall:

Trotzdem danke

GEHT JETZT :-)

Fridolin Walther 24. Jun 2009 14:02

Re: Problem mit FindFirst, FindNext und TFileStream
 
Zitat:

Zitat von AJ_Oldendorf
F.Name liefert im ersten Durchlauf 1.txt und im zweiten Durchlauf 2.txt.
Sieht also richtig aus.

Die Frage ist doch: Ist "1.txt" und "2.txt" eine vollständige Pfadangabe? ;)

quendolineDD 24. Jun 2009 14:03

Re: Problem mit FindFirst, FindNext und TFileStream
 
Ist dir der Fehler nun aufgefallen? Dein Filestream befindet sich in einem gänzlich anderem Pfad als wo du gesucht hast.

Mithrandir 24. Jun 2009 14:03

Re: Problem mit FindFirst, FindNext und TFileStream
 
Zitat:

Zitat von himitsu
Nja, mal im Ernst ... in .Name steht halt nur der Dateiname drin und sonst nix, also immer schon den Pfad mit dazupacken.

Da war ich mir nicht sicher, deswegen hab ich AJ_Oldendorf gefragt, was in F.Name steht.

himitsu 24. Jun 2009 14:08

Re: Problem mit FindFirst, FindNext und TFileStream
 
na gut, ich wußte ja was drin stehn müßte
und in F.Name stand auch der "richtige" Dateiname, wie ja schon bemerkt wurde :mrgreen:

nja, nun geht's ja wieder :)

und andere Suchende müssen nicht lange rumraten, was da drinsteht. :)

AJ_Oldendorf 24. Jun 2009 14:10

Re: Problem mit FindFirst, FindNext und TFileStream
 
Dabei hab ich schon ne Brille auf uns erkenne trotzdem den richtigen Pfad nicht :-)

Naja, jetzt bin ich ein wenig schlauer :-)
Danke nochmals
Alex


Alle Zeitangaben in WEZ +1. Es ist jetzt 10:05 Uhr.
Seite 2 von 2     12   

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