[ Valerij Zajcev @ 26.07.2010. 16:47 ] @
Poceo sam skoro da radim rad sa txt fajlovima u Javi i do sada sam radio na sledeci nacin: Napravim FileInput/OutputStream objekat > Otvorim FileChannel > Ako mi treba upis u Channel write() prosledim ByteBuffer objekat ...
E sada gledam neke primere na netu koristi se nekako "kraca" metoda pomocu FileReader i FileWriter klasa.
1) Sada me zanima da li ima jos razlike izmedju ova dva nacina ili je fora samo u kracem pristupu?
2) Kada koristiti prvi, a kada drugi nacin?
[ Dejan Lozanovic @ 27.07.2010. 16:41 ] @
Uh ti si mu ga bas dao hardcore NIO pristup, mogao si dovoljno da se zezas samo sa Input/output sreamom koristeci read i write metode.

Uglavnom Reader/Writer su predvidjeni za rad sa streamovima koji koriste karaktere. dok klasicni vrte pricu za rad sa bajtovima, manje vise ista stvar, dok recimoi imas BufferedReader.readLine() lep metod koji ti vraca liniju po liniju.
[ Valerij Zajcev @ 27.07.2010. 17:05 ] @
Citat:

Uh ti si mu ga bas dao hardcore NIO pristup, mogao si dovoljno da se zezas samo sa Input/output sreamom koristeci read i write metode.

Aha, pa zbunilo me jer SUN dokumentacija koristi taj pristum sa FileReader-om i read(), a knjiga koju sam uzeo za upoznavanje ja javom provaljujem da koristi bas dosta tih "hard core" nacina za bilo sta, zato me i pobunilo.
[ Dejan Lozanovic @ 27.07.2010. 17:28 ] @
Generalno nema potrebe za tako nekakvim stvarima, u vecini slucajeva klasican pristup je dobar, ovo je cedjenje suve drenovine ako hoces da pravis neki framework koji radi jako velikom kolicinom upisa/ispisa, sve ostalo je ovo drugo lakse, NIO je vise C old school varijanta. Za input/output steram read i write metode interno koriste NIO tako da tu nema mnogo razlike par funkciskih poziva a sve ostalo je isto.