[Java lista] Mark és reset not supported
sashee
gsashee at gmail.com
2009. Sze. 23., Sze, 19:29:43 CEST
Szerintem erre szoktak allapotgepet csinalni. Jonnek a szamok, azokat
tarolod(gondolom van vmi elvalasztokarakter kozottuk), aztan ha az
utana van 3 e, akkor egyik fele, amugy masik fele, beolvasas kozben
pedig tarolod az e-ket is, hogy fel tudd hasznalni, ha esetleg csak 2
jonne.
sashee
2009/9/23 István Viczián <viczian.istvan at gmail.com>:
> PushbackInputStream?
> vagy FilterInputStream-ből leszármaztatás?
> és ezt becsövezni :)
>
> Viczi
>
> 2009/9/23 Verhás István <istvan at verhas.com>:
>> Vázlatosan azt tudom javasolni, hogy származtass egy saját osztályt a
>> dis-ből és implementáld benne a mark és reset metódusokat. Természetesen a
>> read metódusokat is részben újra kell írnod amelyek attól függően, hogy
>> éppen milyen állapotban van (a mark és reset hívásoktól és a saját buffer
>> telítettségének függvényében) a saját bufferből olvas vagy delegálja a
>> super-nek.
>> Ha jó a válaszom, akkor érthető volt...a válasz is...
>> üdv
>> vi
>>
>> -----Original Message-----
>> From: Ámon Tamás <sajt at amon.hu>
>> Reply-to: javalist at javagrund.hu
>> To: javalist at javagrund.hu
>> Subject: [Java lista] Mark és reset not supported
>> Date: Wed, 23 Sep 2009 17:12:35 +0200
>>
>> Sziasztok!
>>
>> Van egy adatfolyam, ami (unsigned) byte-okból áll. Ezt kell beolvasni,
>> es attol fuggöen, hogy hol tartunk csinalni vele valamit. Ezek
>> lehetnek karakterek, binárisan kódolt decimálisok, vagy sima számok.
>> Viszont, vannak elágazási lehetőségek is, pld. a kovetkezo 3 karater
>> "eee", akkor egyfajta képen kell beolvasni, ha nem akkor máshogy,
>> viszont az e helyett a 3 eee helyett bejövő adatokat is ki kell
>> értékelni. Erre a kovetkezo megoldast talaltam (dis = DataInputStream
>> egy leszarmazottja):
>>
>> dis.mark(3);
>> StringBuffer eee = new StringBuffer(3);
>> dis.read(eee, 3);
>> if (eee.toString().compareTo("eee") != 0) {
>> dis.reset();
>> sendParams();
>> }
>> Sajnos kiderult, hogy az adott eszkoz nem tamogatja ezt a mark/reset
>> dolgot. (Gondolom neki kellene.) Hogyan lehetne ezt megoldani? Esetleg
>> van valami olyan osztály, ami ezt az egészet tudja szimulálni? Vagy
>> esetleg olvassam be az egesz inputot egy listaba, es azon ugraljak?
>>
>> Remelem ertheto volt... Elore is koszi!
>>
>>
>> _______________________________________________
>> Javalist mailing list
>> Javalist at javagrund.hu
>> http://javagrund.hu/mailman/listinfo/javalist
>>
>>
> _______________________________________________
> Javalist mailing list
> Javalist at javagrund.hu
> http://javagrund.hu/mailman/listinfo/javalist
>
További információk a(z) Javalist levelezőlistáról