Hallo zusammen,
Ich schreibe zur Zeit an einer Verwaltungssoftware für ein Museum. Hierbei gibt es auch die Möglichkeit Exponate aus der Verwaltung zu Exportieren und diese anschließend, beispielsweise bei einem anderen Museum, wieder zu importieren. Nun ist es so, dass zu einem Exponat auch ein Bild gehört. Das Bild wird als VARBINARY in der Datenbank gespeichert.
Für den Export wandel ich die Bilder in Strings.
Das mach ich mittels Arrays.toString(bytearray).
Beim Import wandel ich den String mittels einer selbstgeschriebenen Methode wieder in ein byte[] um.
Der Quellcode dieser Methode lautet:
Leider sind alle importierten Bilder nach dem Import nur weiß. Und ich komm einfach nicht drauf, woran es das liegen kann. Die Methode wandelt es, zumindest augenscheinlich, korrekt um. Hat von euch jemand eine Idee, wo das Problem liegen könnte?
danke und Gruß, Alex
Ich schreibe zur Zeit an einer Verwaltungssoftware für ein Museum. Hierbei gibt es auch die Möglichkeit Exponate aus der Verwaltung zu Exportieren und diese anschließend, beispielsweise bei einem anderen Museum, wieder zu importieren. Nun ist es so, dass zu einem Exponat auch ein Bild gehört. Das Bild wird als VARBINARY in der Datenbank gespeichert.
Für den Export wandel ich die Bilder in Strings.
Das mach ich mittels Arrays.toString(bytearray).
Beim Import wandel ich den String mittels einer selbstgeschriebenen Methode wieder in ein byte[] um.
Der Quellcode dieser Methode lautet:
Java:
public static byte[] stringtoByteArray(String input) {
input = input.replace("[", "");
input = input.replace("]", "");
String[] splitted_input = input.split(", ");
int length = splitted_input.length;
byte[] output = new byte[length];
for (int i = 0; i != length; i++) {
output[i] = Byte.valueOf(splitted_input[i]);
}
return output;
Leider sind alle importierten Bilder nach dem Import nur weiß. Und ich komm einfach nicht drauf, woran es das liegen kann. Die Methode wandelt es, zumindest augenscheinlich, korrekt um. Hat von euch jemand eine Idee, wo das Problem liegen könnte?
danke und Gruß, Alex