Einzelnen Beitrag anzeigen

Benutzerbild von juergen
juergen

Registriert seit: 10. Jan 2005
Ort: Bönen
1.164 Beiträge
 
Delphi 11 Alexandria
 
#27

AW: Konzeptfrage: Datenhaltung vieler Datei-Infos und deren Darstellg mit schneller S

  Alt 6. Jul 2015, 11:40
Hallo zusammen,

ich habe nun eine -naja- Q&D-Lösung, die für mich reicht. Externe Tools bieten meines Wissens nur das durchsuchen der MFT bei lokalen Laufwerken an. Aber vor allem möchte ich mein Tool nach meinen Bedürfnissen.
Ich bleibe nun bei meinen 2 Stringlisten.
In der ersten TStringList werden Dateipfad+Name (und jetzt neu) das Datum gespeichert (getrennt durch 5 Doppelpunkte). Anzeigen tue ich in einer TListbox im virtullen Modus nur die Dateinamen. In einer für Textsuche angepassten weiteren StringList von alzheimer speichere ich nur die Dateinamen und im Objekt die eindeutige Nummer der "Hauptliste". Somit habe ich in meiner Suchvorschau immer den benötigten, direkten Verweis auf die Hauptliste:
Delphi-Quellcode:
ExtractFileName(copy(sl_Master[Integer(SearchForm.Listbox1.Items.Objects[i])], 1,
  pos(':::::', sl_Master[Integer(SearchForm.Listbox1.Items.Objects[i])])-1)
Die Suche bleibt immer noch so schnell, dass ich meine "Live"-Suche anwenden kann (bei jeder neuen Eingabe eines neuen Buchstaben wird neu gesucht).
MP3-und Exif-Tags lese ich erst aus, wenn die Datei in der Listbox angeklickt wird.
Da ich die Hauptliste sortiere nach Name, Verzeichnis, Dateiendung und nach Datum, benötige ich diese Infos ja in der Hauptliste. Hinzukommen wird noch die Sortierung nach Bewertung (MP3). Aber das funktioniert ja nach dem jetzigen System, indem ich einfach 6 Doppelpunkte als weiteren Trenner für die Bewertungen verwende.

Das Ganze ist für mich überschaubar, umsetzbar und nun auch erweiterbar. Ist sicherlich nicht elegant (da ich mit copy() mir immer die "Teile" aus der Hauptstringlist heraus fischen muss) und eine 2. Liste verwalten muss, aber erfüllt erstmal seinen Zweck.

Danke für eure Ideen und Ratschläge!
Jürgen
Indes sie forschten, röntgten, filmten, funkten, entstand von selbst die köstlichste Erfindung: der Umweg als die kürzeste Verbindung zwischen zwei Punkten. (Erich Kästner)
  Mit Zitat antworten Zitat