Fórum Root.cz
Hlavní témata => Vývoj => Téma založeno: Ikar 20. 02. 2015, 14:21:14
-
Ahoj, fakt mi to při pátku nemyslí, tak chci poprosit o nakopnutí!!!
Mám obrázky ve formě blbou v databázi (cizí databáze), začátek vypadá takto:
0xFFD8FFE000104A46494600010101006000600000
0xFFD8FFE -> JFIF JPEG?
Podle začátku by to mohl být JFIF / JPEG ale nejde mi to nijak načíst, komponenty řvou, že neznámý formát.
Zkoušel jsem to načíst v Java i v C#, ale nechce se tomu.
Přiznám se, vůbec nemám páru o tom, jestli se tam používá nějaké kódování typu Base64 nebo co, což bude asi problém.
Asi to budu muset nejprve převést na nativní obrázkový formát.
Dík za nakopnutí správným směrem, googloval jsem, ale nic co by mě přiblížilo jsem nenašel.
-
Nakoplo by mě, kdybych alespoň věděl, co to je za formát :-(
-
Hm, tak je to jen raw v a problém je zdá se v tom, že mi to žádná funkce nechce sama překonvertovat do formátu, který komponentám chutnal.
Musím to vzít kousek po kousku a převést takhle:
tString = base64String.Substring(i, 2);
tByte = Convert.ToByte(tString, 16);
Bych čekal, že to půjde nějak automaticky a ne že si to budu muset přežvejkat sám :-/
-
0xFFD8FFE000104A46494600010101006000600000
Tohle vypadá na normální začátek JFIF souboru (verze 1.01).
Přiznám se, vůbec nemám páru o tom, jestli se tam používá nějaké kódování typu Base64 nebo co, což bude asi problém.
Nemyslím si, minimálně ten začátek, cos tu ukazoval, určitě kódovaný není. Zkusil sis ta data uložit do souboru a zobrazit nějakým prohlížečem?
-
Nebude spíše problém v tom, že se to snažíš tahat přes String (kde se třeba uplatní různé konverze) a ne jako pole bytů?
-
V te databazi to mas ulozeny jako BLOB? Nebo je to (snad ne :) nejaky varchar s tema hexa kodama?
Jestli je to BLOB, tak pouzij toto: http://docs.oracle.com/javase/7/docs/api/java/sql/Blob.html#getBinaryStream()
-
Tak poskytni access/dump/whatever - ať to můžeme taky zkusit ;)
-
Bud kontaktuj niekoho, kto je autorom tej DB, alebo eskaluj na nadriadeneho, ze ti k tomu chyba zakladna dokumentacia a nezabijaj tym cas. Sformulovanie mailu je na 5 min,reverzne inzinierstvo je ta najneefektivnejsia cesta.