AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren

Virtuelles Dateisystem

Ein Thema von Codewalker · begonnen am 1. Jan 2008 · letzter Beitrag vom 5. Feb 2013
Antwort Antwort
Seite 1 von 3  1 23   
Benutzerbild von Codewalker
Codewalker

Registriert seit: 18. Nov 2005
Ort: Ratingen
945 Beiträge
 
Delphi XE2 Professional
 
#1

Virtuelles Dateisystem

  Alt 1. Jan 2008, 14:54
Ich bin auf der Suche nach einer Möglichkeit (Klassen), mehrere Dateien in einer Datei zu speichern und auf einzelne Dateien zur Laufzeit zugreifen zu können. Zusätzlich sollte man noch die Dateien mit Pfaden ablegen können, um eine Art Baumstruktur zu machen. Ganz wichtig ist mir, dass ich zum laden einer Datei des Archivs nicht das ganze Archiv im Speicher hängen habe, sondern wirklich nur den Teil laden, den ich brauche.

Bei Torry habe ich dazu das SingleFileDataStorage gefunden, aber das erzeugt immer wieder ominöse Fehler beim Einlesen vorhandener Dateien (es lässt die Borland Debugger-DLL abschmieren). Kennt jemand brauchbare Alternativen oder Lösungen dazu?
Thomas
  Mit Zitat antworten Zitat
MrKnogge

Registriert seit: 9. Jun 2003
Ort: Pforzheim
2.458 Beiträge
 
Delphi 2007 Professional
 
#2

Re: Virtuelles Dateisystem

  Alt 1. Jan 2008, 15:18
Du könntest es "entpackt" in den temporären Ordner speichern.
Christian Bootz
Einstein ist tot, Newton ist tot,
und mir ist auch schon ganz schlecht...
  Mit Zitat antworten Zitat
Benutzerbild von peschai
peschai

Registriert seit: 15. Feb 2004
Ort: Göppingen
270 Beiträge
 
Delphi XE5 Professional
 
#3

Re: Virtuelles Dateisystem

  Alt 2. Jan 2008, 07:23
Hallo,

Wie wäre es mit ZIP-Komponenenten ?
Peter Schaible
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer
Online

Registriert seit: 13. Aug 2002
16.941 Beiträge
 
Delphi 10.4 Sydney
 
#4

Re: Virtuelles Dateisystem

  Alt 2. Jan 2008, 07:25
Solid File System
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.804 Beiträge
 
Delphi 10.4 Sydney
 
#5

Re: Virtuelles Dateisystem

  Alt 2. Jan 2008, 07:44
Weitere:
-sfs
-Virtual Stream
Markus Kinzler
  Mit Zitat antworten Zitat
quantum

Registriert seit: 15. Apr 2006
Ort: Kassel
64 Beiträge
 
Delphi XE Professional
 
#6

Re: Virtuelles Dateisystem

  Alt 2. Jan 2008, 08:09
GpStructuredStorage
http://gp.17slon.com/gp/
  Mit Zitat antworten Zitat
Benutzerbild von Codewalker
Codewalker

Registriert seit: 18. Nov 2005
Ort: Ratingen
945 Beiträge
 
Delphi XE2 Professional
 
#7

Re: Virtuelles Dateisystem

  Alt 2. Jan 2008, 18:08
Danke für die vielen Antworten. GpStructuredStorage gefällt mir bis jetzt am besten (nicht zuletzt durch das Total Commander Plugin). Klappt auch alles, nur schaffe ich es nicht, Dateien in das Archiv zu packen. Weiß jemand Rat? (Weil sonst macht das ganze wenig Sinn und man sollte in diesem Zusammenhang davon abraten)
Thomas
  Mit Zitat antworten Zitat
mimi

Registriert seit: 1. Dez 2002
Ort: Oldenburg(Oldenburg)
2.008 Beiträge
 
FreePascal / Lazarus
 
#8

Re: Virtuelles Dateisystem

  Alt 3. Jan 2008, 12:20
Es kommt auf dein Verwendung zweck an. Was hast du damit vor ? Wie groß soll die Datei werden ?

Soll nur lesend drauf zugegrieffen werden ist das relativ leicht mit TFileStream. Aber beim Schreiben wird es schwer.
ist die Dateigröße wichtig ?

Ich versuche gerade selbst so ein Format zu schreiben:
Es gibt Blöcke mit Fester Größe. Jeder Angelegte Tabelle besteht aus z.b. 20 Einträgen die sind von der Länge her fest. Die Länge der Einzelnen Datenstätze kannst du beim erstellen mit angeben. Daraus berechne ich die Zeilen Länge. Im Prinzip währen auch Dynamische Datentypen möglich aber das währe alles aufwendiger.

Meine Idee hätte den Vorteil das die Datei nicht komplett eingelesen werden müsste sondern nur das was du brauchst. Schreiben geht ganz einfach wenn es sich um einfache Datentypen wie Strings oder Integers handelt.

bei Dateien ist das schon schwirger aber nicht unmöglich.

Im Moment hänge ich noch bei den Grundlagen fest. Das ändern von Tabellen Einträge.
Ein Baum Format währe damit auch denkbar. Jede Tabelle zeigt einfach auf eine Andere Tabelle. Damit könnten die Daten so abgerufen werden wie im Dateisystem. Es soll einige Standard Variablen geben die von der Klasse selber gesetzt und geändert werden wie z.b. wie oft wurde dieser Eintrag abgerufen ? Wann wurde er erstellt ? und solche fragen.
Michael Springwald
MFG
Michael Springwald,
Bitte nur Deutsche Links angeben Danke (benutzte überwiegend Lazarus)
  Mit Zitat antworten Zitat
Benutzerbild von Codewalker
Codewalker

Registriert seit: 18. Nov 2005
Ort: Ratingen
945 Beiträge
 
Delphi XE2 Professional
 
#9

Re: Virtuelles Dateisystem

  Alt 3. Jan 2008, 12:51
Nach einigen Startschwierigkeiten komme ich jetzt ganz gut klar und kann mal folgendes über GpStructuredStorage sagen: Anfangs war ich etwas irritiert, weil es alle auf Interfaces aufbaut. Im Nachhinein macht alles Sinn und ist super einfach zu benutzen. Es verhält sich letztlich wie eine Art Datenträger. Der Zugriff läuft vollständig über Streams, so dass man bestehende Lade-/Speicherroutinen nicht anpassen muss. Die Daten können in einer Baumstruktur abgelegt werden und sind in der Größe nur auf 2 GB beschränkt (reicht mir ).

Es fehlt nur an drei Dingen:
  • Eine gute Dokumentation, man muss (wie bei so vielem) sich einiges Zusammensuchen. Liegt auch z.T. am schlechten Demo
  • Einen guten Editor, um schnell Dateien zusammenzubauen (musste ich mir selber schreiben)
  • Eine Funktion, um alle enthaltenen Verzeichnisse in einem Baum darstellen zu können. (Musste ich mir auch über eine rekursive Funktion mit ein paar Tricks zusammenbauen)

Unterm Strich kann ich nur sagen: Empfehlenswert. Ist genau das, was ich gesucht habe und wird auch häufig eingesetzt (z.B. von den GExperts für die CodeLib)

@Mimi: Quelltext ist mit dabei, vielleicht kannst du dir da ja ein wenig Inspiration holen. Scheint da zumindest alles gut gelöst zu sein
Thomas
  Mit Zitat antworten Zitat
Ghostwalker

Registriert seit: 16. Jun 2003
Ort: Schönwald
1.299 Beiträge
 
Delphi 10.3 Rio
 
#10

Re: Virtuelles Dateisystem

  Alt 3. Jan 2008, 13:12
@Codewalker

Wie wärs mit einem kleinen Tutorial ? Ich denke das das Thema viele interessieren würde
Uwe
e=mc² or energy = milk * coffee²
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 3  1 23   

Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

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 11:59 Uhr.
Powered by vBulletin® Copyright ©2000 - 2022, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2021 by Daniel R. Wolf