AGB  ·  Datenschutz  ·  Impressum  







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

Dateipfad in Variable speichern?

Ein Thema von Kevinpptx · begonnen am 19. Okt 2022 · letzter Beitrag vom 19. Okt 2022
Antwort Antwort
Kevinpptx

Registriert seit: 10. Okt 2022
Ort: Sachsen
29 Beiträge
 
Delphi 11 Alexandria
 
#1

AW: Dateipfad in Variable speichern?

  Alt 19. Okt 2022, 13:34
Danke für die ganzen Ideen! Ich konnte einiges umsetzen
  Mit Zitat antworten Zitat
Benutzerbild von Harry Stahl
Harry Stahl

Registriert seit: 2. Apr 2004
Ort: Bonn
2.561 Beiträge
 
Delphi 12 Athens
 
#2

AW: Dateipfad in Variable speichern?

  Alt 19. Okt 2022, 14:41
Alternativ könnte man das auch so machen (Unit System.IOUtils wird benötigt):

Delphi-Quellcode:
type
  TProfiles = (p1, p2, p3, p4);

var
  Basepath : String = 'H:\testend\profil';

  SelectedPath: String;

var
  Form26: TForm26;

implementation

{$R *.dfm}

function ExistsOrCreateDir (APath: String): Boolean;
begin
    try
    if not TDirectory.Exists(APath) then begin
      System.IOUtils.TDirectory.CreateDirectory(APath);
    end;
  finally
    Result := TDirectory.Exists (APath);
  end;
end;


procedure TForm26.Button1Click(Sender: TObject);
begin
  SelectedPath := BasePath + Succ (Ord (p1)).tostring;
  if ExistsOrCreateDir (SelectedPath) then begin
    //...
  end;
end;
Die Verwendung von TDirectory ist Plattformübergreifend und erhöht somit die Wiederverwendbarkeit des Codes.
Intern verwendet TDirectory ForceDirectories, wenn erforderlich und schmeißt eine Exception mit einem entsprechenden veständlichen Hinweis, wenn z.B. ein nicht existierendes Laufwerk im Basepath verwendet wird.

Mit dieser Variante kann man Basepath leicht abändern und das ganze flexibel auf einem anderen Laufwerk einsetzen.

Je nach dem, könnte man auch eine eigene Klasse bilden (hängt vom sonstigen Code ab).

Edit: Kurz nach dem Post fiel mir auf, dass Du ja noch den ausgewählten Path für weitere Aktionen brauchst, daher hier noch etwas abgeändert.

Geändert von Harry Stahl (19. Okt 2022 um 15:26 Uhr)
  Mit Zitat antworten Zitat
Antwort Antwort


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 04:25 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