Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Abfrage FileExists(filename) (https://www.delphipraxis.net/32807-abfrage-fileexists-filename.html)

allarich 28. Okt 2004 09:35


Abfrage FileExists(filename)
 
Hallo und guten Morgen,
wer kann weiterhelfen?
Ich möchte im Programm abfragen,ob ein File existiert und je nachdem diesen File aufrufen oder einen
Neuen File(ExcelWorkbook) erstellen. Meine Abfrage läuft aber immer darauf hinaus,daß der File nicht existiert,obwohl ich genau weiß,daß er existiert.
Folgenden TestCode habe ich generiert:

.
. :dancer2:
Delphi-Quellcode:
var pf: string;
label Marke1;
label Marke2;
begin
pf:= InputBox('Testfile','Pfadeingabe','');
if FileExists(pf) then
GoTo Martke1
else
GoTo Marke2;

Marke1:
Label1.Caption:='File gefunden';
Marke2:
Label1.Caption:='File nicht gefunden';
end;
:idea:


MfG
allarich

[edit=Luckie]Füge das nächste mal bitte selbsständig die Delphi-Tags ein. Mfg, Luckie[/edit]

sakura 28. Okt 2004 09:37

Re: Abfrage FileExists(filename)
 
Hi allarich,

nutze doch bitte mal die FAQ-Eintrag zum Stichwort "9""9" Tags, um obigen Code auch schön darzustellen.

...:cat:...

Luckie 28. Okt 2004 09:40

Re: Abfrage FileExists(filename)
 
Erstmal grausam, diese Labels. Delphi ist eine strukturierte Programmiersprache, die Blöcke kennt:
Delphi-Quellcode:
if FileExists(Filename) then
begin
  // Datei existiert, mach dies
end
else
begin
  // Datei existiert nut, mach das
end;
Daraus resultiert auch dein Fehler im Code: Wenn zu Marke eins gesprungen wird, wird auch der Code danach abgearbeitet, das heißt, egal, ob die Datei existiert oder nicht, im Label steht immer "File nicht gefunden". :roll:

Bernhard Geyer 28. Okt 2004 09:41

Re: Abfrage FileExists(filename)
 
Delphi-Quellcode:
uses
  Dialogs;

...

var
  pf: string;
  OpenDialog: TOpenDialog;
begin
  OpenDialog := TOpenDialog.Create;
  try
    if OpenDialog.Execute then
    begin
      pf := OpenDialog.FileName;
      if FileExists(pf) then
        Label1.Caption:='File gefunden'
      else
        Label1.Caption:='File nicht gefunden';
    end
  finally
    OpenDialog.Free;
  end;
end;

shmia 28. Okt 2004 09:44

Re: Abfrage FileExists(filename)
 
Dein Programmcode ist aber extrem schlecht. :kotz:
Die Verwendung von Goto an völlig unnötiger Stelle ist ein Verbrechen und sollte gleich mit
380V Stromstößen bestraft werden !!!

Überleg mal, was passiert wenn das Programm auf Marke1 läuft.
Könnte es dann nicht sein, dass der Code unter Marke2 gleich danach ausgeführt wird??? (retorische Frage)
Delphi-Quellcode:
Marke1:
Label1.Caption:='File gefunden';
Marke2:
Label1.Caption:='File nicht gefunden';
end;

Luckie 28. Okt 2004 09:46

Re: Abfrage FileExists(filename)
 
Zitat:

Zitat von shmia
Überleg mal, was passiert wenn das Programm auf Marke1 läuft.
Könnte es dann nicht sein, dass der Code unter Marke2 gleich danach ausgeführt wird??? (retorische Frage)

Habe ich es denn so schlecht erklärt, dass ihr es auch noch mal doppelt und dreifach erklären müsst? :gruebel:

jim_raynor 28. Okt 2004 09:55

Re: Abfrage FileExists(filename)
 
Ich glaube sein Problem war einfach, dass er nicht wusste wie er in einem If mehere Anweisungen machen kann. :drunken:

Das wurde aber jetzt oft genug gezeigt, so dass ich das nicht nochmal erkläre :coder2:

shmia 28. Okt 2004 10:06

Re: Abfrage FileExists(filename)
 
Zitat:

Zitat von Luckie
Habe ich es denn so schlecht erklärt, dass ihr es auch noch mal doppelt und dreifach erklären müsst? :gruebel:

Weisst du nicht was konkurrierende Antworten sind?
3 Leute antworten auf eine Frage; manche sind schneller, manche brauchen mehr Zeit.
Du bist halt immer der Schnellste. :cyclops:

glkgereon 28. Okt 2004 11:49

Re: Abfrage FileExists(filename)
 
***OT***
Zitat:

Die Verwendung von Goto an völlig unnötiger Stelle ist ein Verbrechen und sollte gleich mit
380V Stromstößen bestraft werden !!!
ich würde 380000V nehmen :mrgreen:
***/OT***

allarich 28. Okt 2004 12:42

Re: Abfrage FileExists(filename)
 
Hallo Leute,
erstmal danke für Eure prompte Reaktion.
Ich hatte alles mögliche ausprobiert ,kam aber nicht weiter(oft sieht man dann vor lauter Bäume den Wald nicht mehr). Natürlich weiss ich wie man eine "if - Schleife" programmiert.Habe wahrscheinlich
schon programmiert, da waren die meissten von Euch noch nicht geboren (damals jedoch fasst ausschließlich in FORTRAN).Obwohl Delphi auch nur eine Programmiersprache ist,sind doch manche Dinge dagegen sehr unterschiedlich.

Ich habe Eure Vorschläge alle ausprobiert(einige hatte ich vorher schon versucht),aber ohne Erfolg !
Als letzten Versuch habe ich dann den Filename direkt in die Abfrage(if FileExists('F:/Test1.xls')
eingesetzt,ind siehe da,es funktionierte. Nicht aber über "InputBox". Kann mir jemand sagen warum nicht ?

MfG
allarich


Alle Zeitangaben in WEZ +1. Es ist jetzt 20:30 Uhr.
Seite 1 von 2  1 2      

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