[Java lista] nem ertem....

Böszörményi Péter zmblevlist at gmail.com
2010. Május. 5., Sze, 15:58:09 CEST


Elso korge rakjuk mar rendbe az osztalyokat.  sun.misc.BASE64Encoder-t  
importalsz, aztan Base64-et hasznalsz. Ez az utobbi mi az isten?

On Wed, 05 May 2010 15:51:04 +0200, Laja <laja at freemail.hu> wrote:

> Hi!
>
> Van egy érdekes problémám, amit nem értek. A kód:
>
> import sun.misc.BASE64Decoder;
> import sun.misc.BASE64Encoder;
> ...
>
> ByteArrayOutputStream  os=new ByteArrayOutputStream();
> pdd.save(os); //mindegy mi ez, lényeg hogy adatokat ír bele.
> os.close();
> System.out.println("os="+os.toString()); //ez szépen kiírja az adatokat
> String retstr=Base64.encode(os.toByteArray()).toString();
> System.out.println("retstr=\""+retstr+"\""); //az eredmény:
> retstr="[C at 1855562"
>
>
> Azt hoiszem érthető. Van egy output stream, amibe adatokat írok. Ha ezt
> kiiratom, látszik hogy szépen benne bvan az adat. Azután Base64 kódolom,
> és az eredmény egy 10 karaktgeres string (több ezer bájtnyi adat van).
> Miért nem működik ez?
>
> Ha a kódot így módosítom:
>
> ByteArrayOutputStream  os=new ByteArrayOutputStream();
> pdd.save(os); //mindegy mi ez, lényeg hogy adatokat ír bele.
> os.close();
> System.out.println("os="+os.toString()); //ez szépen kiírja az adatokat
> ByteArrayInputStream bis=new ByteArrayInputStream(os.toByteArray());
> String retstr=Base64.encodeStream(bis).toString();
> df.println("retstr=\""+retstr+"\"");
>
> Ebben az esetben rendben meglesz minden adat.
>
> A progiban mint látható, a sun féle Base64 kódolót használom.
>
> Laja
>
>
> _______________________________________________
> Javalist mailing list
> Javalist at javagrund.hu
> http://javagrund.hu/mailman/listinfo/javalist


-- 
Üdvözlettel,
Böszörményi Péter


További információk a(z) Javalist levelezőlistáról