![]() |
Einfaches Dateiarchiv
Liste der Anhänge anzeigen (Anzahl: 1)
ich habe eine klasse geschrieben um mehrere dateien möglichst einfach (unkomprimiert) in einer datei zu speichern und wieder zu trennen. (löschen kann man auf grund der archivstrucktur nicht.)
ich habe dabei auf diesem ![]() die unit befindet sich mit einem kleinen beispiel programm im anhang. |
Re: Einfaches Dateiarchiv
Ich würde vorschlagen, du änderst dein Archivformat und verwendest das in Unix-Kreisen
weitverbreitete Archivformat TAR. ![]() (wenn der Link nicht direkt zum download führt, dann such mal nach TAR auf ![]() TAR (=Tape ARchiv) speichert Dateien unkomprimiert und ist von vielen Packern lesbar. |
Re: Einfaches Dateiarchiv
wozu?
wenn ich irgendwas fertiges nehmen wollte müsste ich garnicht mehr programmieren. im internet gibts eh alles schon doppelt und dreifach. es kommt halt auch auf den verwendungszweck an. wenn ich z.b. 100 glymphs für mein programm hab die alle 3kb groß sind dann kann ich sie einfach in eine datei packen und dann zur laufzeit wieder auspacken und dynamisch laden. außerdem mag ichs lieber selber gemacht ;) |
Re: Einfaches Dateiarchiv
was heißt etwas fertiges?
die unit die du benutzt hast, ist doch auch nicht selbst geschrieben. ps: wenn schon das rad neu erfinden dann richtig :P |
Re: Einfaches Dateiarchiv
natürlich is die selbst geschrieben! glaubst du es geht um das programm außen rum? ich bin zwar kein absolut profi aber ein bischen mehr kann ich schon!
und es geht auch nicht darum einen neuen archivtypen zu verbreiten sondern um das einfache handling mehrerer dateien von einem programm aus! da sowas hier öfter mal gefragt wird dacht ich mir ich häng das mal hier rein. |
Re: Einfaches Dateiarchiv
und was ist nun an deiner myArchiv-Unit anders?
|
Re: Einfaches Dateiarchiv
sag mal hast du dir das tutorial und die unit angeschaut?
ich habe lediglich das speicherformat übernommen! gelesen hab ich nur die ersten 2 1/2 seiten und kopiert kein stück. (nur ein paar codeteile sind sich ähnlich da ich bis jetzt noch nicht mit untypisierten dateien gearbeitet hab und mein wissen eben daher bezogen hab. außerdem is der syntax in dem zusammenhang nicht besonders vielseitig ;)) |
Re: Einfaches Dateiarchiv
da du meine frage nicht beantworten kannst, sage ich dir, was in deiner unit anders ist.
Nichts, du hast lediglich die Kommentare entfernt. Und du willst ein Programmierer sein? :roll: Ich hätte wenigstens erwartet, das du TFileStream anstatt BlockRead/BlockWrite verwendest. |
Re: Einfaches Dateiarchiv
glaubst du eigendlich ernsthaft das ichs nötig hab mir nen haufen müll zusammen zu kopieren und das ganze dann als meins zu verkaufen? ich weis das sich die codes ziemlich ähneln aber das liegt einfach daran das es da nicht viele möglichkeiten gibt. wenn du den code gelesen hättest müsstest du nicht fragen. also wirf mir nicht einfach vor alles kopiert zu haben. ich hab nur fairerweise erwähnt das ich auf dem tutorial aufgebaut habe weil ich eben zufällig auf das tutorial gestoßen bin, die ersten 2 1/2 seiten gelesen hab und mir dann gedacht hab das kann ich "besser" (oder besser das mach ich selber).
|
Re: Einfaches Dateiarchiv
Könntet ihr eure Differenzen bitte per PN austragen?
|
Re: Einfaches Dateiarchiv
Zitat:
Dies gilt vorallem dann, wenn der offene Standard (in diesem Fall TAR) dem selbst-erfundenen Format überlegen ist und weite Akzeptanz im Internet findet. Natürlich darfst du trotzdem alles selbst programmieren. Es sollte auch nur eine Anregung sein, keine Kritik an deiner Arbeit. |
Re: Einfaches Dateiarchiv
Zitat:
Beispiel: Möchtest du Kundendaten in einem Tar Archiv speichern, dass ja jeder das ding entpacken und einsehen kann? Und anbei hab ich mir grad den SourceCode bzw. das Tutorial angeschaut. Da sind einige Unterschiede bzw. Erweiterungen bzw. Verbesserungen drin. Und ich wage jetzt einfach mla zu bezweifeln dass gekmihesg erst alles kopiert hat und dann alles umgeändert hat dann auch noch hinschreibt dass sein denkanstoß dieses besagte tutorial ist. meine meinung, macht mich ruhig zur sau |
Re: Einfaches Dateiarchiv
hab mir das mal angeschaut (tutorial muss ich mir auch noch anschaun) weil ich atm auch an einer Art Dateiarchiv arbeite (mit verschlüsselung)...
also das löschen von Dateien aus dem Archiv sollte eigentlich möglich sein 2 Positionen in der Datei merken: -X beginn der Dateiinformationen, der zu löschenden Datei -Y beginn der nächsten Datei (Dateiinformationen) und dann könntest du einfach alle Daten ab Y um die Differenz von X und Y weiter nach vorne verschieben |
Re: Einfaches Dateiarchiv
Hilfe Admins
dreht diesen Streithammeln die Luft ab. Das ist ja nicht zu ertragen! Rainer |
Re: Einfaches Dateiarchiv
Wie Luckie schon sagte : Streitet euch via PM aber nicht hier im Thread. Schon garnicht wenn es nicht zum Thema gehört.
Wenn ihr das nicht einseht wird der Thread geschlossen oder auch gleich ganz gelöscht! Punkt! |
Re: Einfaches Dateiarchiv
hmmm tut mir leid wennd as vielleicht ein bischen ausgeartet is.
Zitat:
Zitat:
|
Re: Einfaches Dateiarchiv
naja man steht vor der Frage ob man Daten (die eigentlich nicht mehr gebraucht werden) im Archiv zu lassen und somit das Archiv unnötig zu vergrößern
oder man versucht eben etwas zu entwickeln was die Problematik in ansätzen lößt.... -wenn z.B. nie irgend eine Datei ersetzt werden muss, brauch man natürlich nicht löschen -wenn man in einem Archiv einige kleine Dateien (die öfter erneuert werden sollen) und wenige große Dateien (die nie/sehr selten) verändert werden, dann kann man das so managen das die kleinen Dateien (die sich öfter verändern sollen) am ende des Archives gespeichert werden ->nur ein 'relativ kleiner' Teil des Archives am Ende muss neu geschrieben werden -wenn sich die großen Daten öfter mal verändern, führt (fast) kein Weg an einer größeren Schreibarbeit im Archiv vorbei -wenn man Dateien meist updaten (größe sollte sich dabei nicht verändern) will, kann man die Daten im Archiv einfach abgleichen usw. usw. man könnte auch versuchen die Lücke mit Daten aus dem hinteren Teil des Archiv zu füllen, nur muss man dann wohl auch leere Bytes im Archiv Riskieren (was sich nicht positiv auf die Größe des Archives auswirken wird wenn man recht häufig etwas verändern will) gibt da recht viele Methoden, es kommt nur auf die jeweilige Anforderungen an Ich hab bei meinem Archiv z.B. die Priorität einen schnellen Zugriff auf die Verzeichnisstruktur/Dateiinformationen gesetzt (schnelles auslesen der Informationen aus dem Archiv) und deshalb am ende meines Archives die komplette Struktur der Daten/Verzeichnisse gesetzt. werden Daten zum Archiv hinzugefügt, wird die Struktur erstmal überschrieben (ist meist recht klein und benötigt für meinen Temp Internetfiles Ordner mit rund 2800 Dateien in 5 Ordnern knapp unter 100KByte um die ganze Struktur mit Dateinamen zu speichern) und wenn alles wieder fertig ist neu am Ende des Archives geschrieben /Edit: eben nochmal nachgeschaut.... die Speicherung im *.zip format benötigt für die Speicherung der Struktur(Dateinamen) knapp 450KByte mehr an Speicherplatz und es wird (denke ich mir mal) beim einlesen der Struktur wild durch die Datei gesprungen |
Re: Einfaches Dateiarchiv
Naja nur das dumme ist dann, dass das Archiv jetzt nicht mehr unlesbar ist, da du das prog grad verteilst hast.
Ich find das ding aber trotzdem erste Sahne. Würd ich, wenn ich da durch steigen würde auch so machen. PS: Tar, Rar u.s.w hat Passwortschutz ( Ka ob das jemand bereits erwähnt hat) |
Re: Einfaches Dateiarchiv
@Richard Angelus
ja aber dann entsteht ein daten loch bzw. um dies auszugleichen musst du dann alle daten anpassen und bei größern archiven ist dies zu Zeitaufwändig. ich arbeite z.z. auch an einen archiver. Ich bin auch schon mit den archivern fertig: du kannst inzwischen: dateien archivieren dateien entpacken dateien aus dem archiv löschen dateien zum archiv hinzufügen dateien im archiv updaten im moemnt habe ich das problem mit einer eignen copyFrom funktion wo es mölgich ist abzubrechen. da hänge ich im moment *leider* da anscheiend viele archiver formate schreiben könnten wir uns doch auch zusammen tuen und eins schreiben was dann unsere wünsche entsprechnen ist.... |
Re: Einfaches Dateiarchiv
Ich hab mir jetzt dein Beispiel noch nicht angeschaut sondern nur das Tutorial kurz überflogen. Wie bigg schon sagte hätte man das ja auch mit Streams lösen können. Wie ist das mit der Geschwindigkeit: würde das einen Unterschied machen? Was wäre, wenn man das ganze mit TIniFile löst?
Der Hintergrund dieser Nachfrage ist der, dass ich auch grade versuche Dateien zusammenzupacken um sie vor neugierigen Blicken zu schützen. -> ![]() |
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:28 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