Professional Documents
Culture Documents
CS 04
CS 04
Pregled
Tokovi (Streams)
Klase za čitanje i upis
Ulaz/Izlaz sa fajlovima
Tokovi (Streams)
Zokovi su sredstvo za čitanje i upis bajtova iz i u skladišta
podataka
Svi tokovi su izvedeni iz klase System.IO.Stream
Osnovne operacije sa tokovima se: Read, Write, and Seek
Odgovarajuća svojstva su: CanRead, CanWrite i
CanSeek
Neki tokovi podržavaju baferovanje zbog unapređenja
performansi
Metoda Flush prazni sve interne bafere jednog toka
Metoda Close oslobađa sve resurse koje je tok zauzeo
.NET Framework obezbeđuje sledeće klase za rad sa
tokovima
NetworkStream, BufferedStream, MemoryStream,
FileStream, CryptoStream
Klase za čitanje i upis (Readers & Writers)
Klase koje su izvedene iz klase
System.IO.Stream vrše ulaz/izlaz operacije nad
bajtovima
Readers & Writers uzimaju druge tipove za ulaz i
izlaz i učitavaju ih ili upisuju u tokove ili stringove
Klase BinaryReader i BinaryWriter čitaju i upisuju
primitivne tipove u tok
Klase TextReader i TextWriter su apstraktne
klase koje implementiraju metode za čitanje i
upis karaktera
Iz klasa TextReader i TextWriter su izvedene:
StreamReader i StreamWriter, koje čitaju i
upisuju u tok
StringReader i StringWriter, koje čitaju i
upisuju u string ili StringBuilder objekte
Ulaz/Izlaz sa fajlovima
Klasa FileStream
Klase File i FileInfo
Preimer čitanja teksta
Primer upisivanja teksta
Klase Directory i DirectoryInfo
FileSystemWatcher
Klasa FileStream
Klasa FileStream se koristi i za čitanje podataka iz fajla i
za upis podataka u fajl
Konstruktor klase FileStream sadrži sledeće parametre
FileMode – Open, Append, Create
FileAccess – Read, ReadWrite, Write
FileShare – None, Read, ReadWrite, Write
//...
StreamWriter sw = File.CreateText("MyFile.txt");
sw.WriteLine ("This is my file");
sw.WriteLine (
"I can write ints {0} or floats {1}", 1, 4.2);
sw.Close();
//...
Klase Directory i DirectoryInfo
Klasa Directory ima statičke metode za:
Kreiranje, premeštanje i listanje članova
direktorijuma
DirectoryInfo ima regularne metode za:
Kreiranje, premeštanje i listanje članova
direktorijuma
Primer:
Listanje sadržaja trenutno aktivnog
direktorijuma: