Traymasta Geschrieben 24. November 2009 Geschrieben 24. November 2009 Hey Leute, ich bin auf der Suche nach einen passenden Datentypen für mein Problemchen, bzw. vielleicht einen Typ in Sachen wie ich das am optimalsten angehen könnte. Folgendes Szenario: Ich arbeite grad an einem kleinen Tool für mich, mit welchem ich verschiedene Web-Services abfrage, welche mir XML zurückliefern. Als Datenbasis dient mir je nach Fall entweder MySQL, SQLite oder HSQLDB. In einem bestimmten Tag steht dann ein Pfad zu einem Bild (Cover). Dieses Bild würde ich gern lokal Speichern, um nicht immer unnötigen Traffic zu erzeugen. Allerdings möchte ich es vermeiden, dass das Bild in einem Unterordner gespeichert wird. Auch widerstrebt mir, die Datenbank mit so einer primitiven Aufgabe zu belasten. Am besten wäre mit eine Art Container, in welchem ich die Bilder einfach "reinschmeissen" kann, und in welchem ich dann mittels definierbaren Index von der Platte lesen kann (eine Art Hashmap in Dateiform). Bin hier für jeden guten Tip dankbar! Grüße Tray Zitieren
DissonanceX Geschrieben 24. November 2009 Geschrieben 24. November 2009 Hey, ein solcher "Container" nennt sich Unterverzeichnis :floet: Warum soll es nicht in einem Unterverzeichnis gespeichert werden? Letztendlich hast Du keinen Gewinn dadurch, wenn Du einen filebasierten Container hast (also in Deinem Fall so etwas wie ein Meta-Filesystem) und dort Deine Images ablegst, denn Sie würden ja auch hier wieder auf den Datenträger geschrieben oder von dort gelesen werden. So long Zitieren
speedi Geschrieben 26. November 2009 Geschrieben 26. November 2009 (bearbeitet) Da gibts sicher viele Varianten. Spontan würde mir aber dazu die Java-Zip-Library einfallen. Die ist extrem einfach in der Handhabung und dürfte deinen zweck super erfüllen. Wenn du nicht willst, dass jemand in die Datei reinschauen kann dann lass den Dateinamen einfach nicht auf .zip enden und/oder komplementiere die Bytes. Eine weitere Möglichkeit wäre noch XML. Allerdings kanns dann passieren, dass du dir was einfallen lassen musst wie du vermeidest, dass diene Nutzdaten zeichen enthalten, die der Parser intepretieren könnte. Eine Variante wäre da sicherlich die Bytes des bildes in Hex-Chars um zu wandeln. Verbraucht dann aber den doppelten Platz. Du kannst das ganze auch als KLV (Key,Length,Value) abspeichern. Das heißt du schreibst in die datei z.B.: Bild.jpg,2365,DIEBYTESDESZUJPGKONVERTIERTENBILDES.... AnderesBild.jpg,4232,DIEBYTESDESZWEITENBILDES.... Da gibts sicher tausend und eine Möglichkeit das zu realisieren. DU kannst dir ja auch selbst noch was völlig neues überlegen. Bearbeitet 26. November 2009 von speedi Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.