Zum Inhalt springen

Java Datentyp für mehrere Dateien in einer Datei


Empfohlene Beiträge

Geschrieben

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

Geschrieben

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

Geschrieben (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 von speedi

Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren

Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können

Benutzerkonto erstellen

Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!

Neues Benutzerkonto erstellen

Anmelden

Du hast bereits ein Benutzerkonto? Melde Dich hier an.

Jetzt anmelden

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...