Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

BLOB flushovanje OutputStreama u String

[es] :: Java :: BLOB flushovanje OutputStreama u String

[ Pregleda: 1628 | Odgovora: 2 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

tokajac

Član broj: 93240
Poruke: 123
94.189.240.*



+5 Profil

icon BLOB flushovanje OutputStreama u String15.12.2008. u 17:43 - pre 186 meseci
Hocu da niz bajtova, koji su ustvari vrednost kolone iz baze ciji je tip BLOB, prebacim u String.

Dakle, pomocu ovog koda:
Code:

OutputStream  out = System.out;
try {
   out.write( byteArrayBlob );
   out.flush();
} catch (IOException e) {
  e.printStackTrace();
}

Niz bojatova se kao text ispishe na konzolu -sve cool.
Ono sto hocu je da ga upishem u String ili StringBuffer, koji cu dalje koristiti u aplikaciji.


Nije moguce koristiti String konstruktor: new String(byte[]), posto se radi o BLOB tipu (valjda je to neki pokazivac?).
Mozda treba napraviti vezu izmedju OUT/IN streamova? Kako? Probao sam neke primere, ali rade samo za obicne stringove, ne i za niz bytova.

Znam da postoji razlika izmedju Writera(text) i Streamova(bytovi).
Trenutno sam resio tako sto sve upisem u fajl pa onda iscitavam iz fajla. Kako da realizujem direktno resenje?


Pozdrav

 
Odgovor na temu

Ivan Ivanic
Ivan Ivanic
Freelance, Anywhere
Fruška Gora

Član broj: 203038
Poruke: 179
*.ptt.rs.

Sajt: ivan.yggdrasillcode.com


Profil

icon Re: BLOB flushovanje OutputStreama u String15.12.2008. u 22:03 - pre 186 meseci
Pogledaj API za:
java/sql/ResultSet method getString(int)
java/sql/ResultSet method getString(java.lang.String)

Pitanje ti je totalno nejasno. Mislim da će ti ovo pomoći.
Ivan
Rad rad i samo rad :-D
 
Odgovor na temu

Chobicus
Pancevo

Član broj: 28286
Poruke: 135
77.247.200.*

ICQ: 31049018


+12 Profil

icon Re: BLOB flushovanje OutputStreama u String16.12.2008. u 08:26 - pre 186 meseci
Nisam probao ali deluje da radi:
http://www.kodejava.org/examples/266.html

Pretpostavljam da podatke iz baze dobijaš preko
Code:
InputStream is = rs.getBinaryStream("BLOBColumnName");


Code:
public String convertStreamToString(InputStream is) {
        /*
         * To convert the InputStream to String we use the BufferedReader.readLine()
         * method. We iterate until the BufferedReader return null which means
         * there's no more data to read. Each line will appended to a StringBuilder
         * and returned as String.
         */
        BufferedReader reader = new BufferedReader(new InputStreamReader(is));
        StringBuilder sb = new StringBuilder();
 
        String line = null;
        try {
            while ((line = reader.readLine()) != null) {
                sb.append(line + "\n");
            }
        } catch (IOException e) {
            e.printStackTrace();
        } finally {
            try {
                is.close();
            } catch (IOException e) {
                e.printStackTrace();
            }
        }
 
        return sb.toString();
    }
}
 
Odgovor na temu

[es] :: Java :: BLOB flushovanje OutputStreama u String

[ Pregleda: 1628 | Odgovora: 2 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.