![]() |
Verzeichnisstruktur
Hallo Liebe Forenmitglieder. Ich habe ein riesiges Problem ich hoffe ihr könnt mir weiter helfen.
Ich sammle Leidenschaftlich gerne Briefmarken. Ich scanne diese ein und lege diese unter einem „mir logischen Pfad ab“. Das Problem ist : Wenn ich mal eben schnell ein Scan öffnen möchte, dauert das ewig bis ich bei der Datei angekommen bin. In Delphi habe ich eine VCL mit Textbox. Ich möchte gerne das wenn man die Datei Nummer eingibt Automatisch sich der Scan mit Irfan View öffnet ist das möglich? G:\PICS\9\R\22\3 9R223000L5.jpg oder 9R223000L5-55.jpg Gibt es eine logische Programmierung. Meine Logik reicht dafür nicht aus!:shock: Ich danke euch für eure Hilfe |
AW: Verzeichnisstruktur
Was ist denn die Dateinummer?
|
AW: Verzeichnisstruktur
Ich denke er meint den Dateinamen?!
Das Problem für uns ist hier, dass wir deine Logik näher erklärt haben müssten, um dir konkret helfen zu können. Beschreibe doch einfach mal ein Beispiel. |
AW: Verzeichnisstruktur
Zitat:
![]() ![]() ![]()
Delphi-Quellcode:
var
tmp: String; input: String; path: String; begin path := 'G:\PICS\'; input := Edit1.Text; // 1. Zeichen ermitteln tmp := Copy(input, 1, 1); path := path + tmp + '\'; // path ist jetzt G:\PICS\9\ // und so weiter bis du den vollständigen Pfad + Dateinamen hast // Öffnen kannst du die Datei dann mit ShellExecute end; |
AW: Verzeichnisstruktur
WOW, ich muss das mal heute abend ausprobieren! Vielen herzlichen Dank! :-D
:shock: |
AW: Verzeichnisstruktur
Auf sowas würde ich reguläre Ausdrücke los lassen. Auf ein paar Millisekunden hin oder her kommt es hier ja eh nicht darauf an.
|
AW: Verzeichnisstruktur
Ja die sind immer gleichlang!
|
AW: Verzeichnisstruktur
Ich habe den Zusammenhang immer noch nicht verstanden :gruebel:. Soll da ein Dateiname eingegeben und daraus der Pfad ermittelt werden oder andersherum oder wie?
|
AW: Verzeichnisstruktur
Ja, Der Dateiname wird eingegeben ....zerlegt....und die Datei öffnet sich.....:shock:
|
AW: Verzeichnisstruktur
Dann ginge ja auch Insert(), man muss nur daran denken, dass sich danach der Index jeweils um 1 verschiebt.
[edit] Passt das so?
Delphi-Quellcode:
[/edit]
function GetDirFromFilename(Filename, IncludingDir: string;
BackslashPositions: array of integer): string; var i, RealPosition: integer; begin RealPosition := 0; for i := Low(BackslashPositions) to High(BackslashPositions) do begin Insert('\', Filename, BackslashPositions[i] + RealPosition); inc(RealPosition); end; Result := IncludeTrailingPathDelimiter(IncludingDir) + Filename; end; procedure TForm1.Button1Click(Sender: TObject); begin ShowMessage(GetDirFromFilename('9R223000L5.jpg', 'G:\PICS', [2,3,5,6])) end; |
Alle Zeitangaben in WEZ +1. Es ist jetzt 09:41 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