Dostęp do
pliku
Przegląd zagadnień
Definicja pliku
Strumienie - definicja
Strumienie w bibliotece .Net
Framework
Operacje na pliku - przykład
Operacje na strukturze systemu plików
Podsumowanie
Pytania sprawdzające
Laboratorium
Definicja pliku
Plik - skończony zbiór danych (informacji)
przechowywana na dysku, dostępna za pomocą
nazwy rozszerzonej o ścieżkę dostępu, który
stanowi dla systemy operacyjnego całość
Atrybuty pliku
tryb dostępu - typ wyliczeniowy FileAccess
Read, ReadWrite, Write
zasady współużytkowania - typ wyliczeniowy
FileShare
Delete, Inheritable, None, Read, ReadWrite, Write
sposób otwarcia (utworzenia) - typ wyliczeniowy
FileMode
Append, Create, CreateNew, Open, OpenOrCreate,
Truncate
Strumienie - definicja
Strumień - pewna warstwa abstrakcyjna,
umożliwia nam zapis i odczyt danych z
różnych źródeł
Podstawowe operacje na strumieniach:
czytanie danych (reading) - pobieranie
danych ze strumienia i umieszczanie ich w
pewnej strukturze danych
zapis danych (writting) - wstawienie danych
do strumienia z pewnej struktury danych
ustawienie bieżącej pozycji w strumieniu
(seeking)
Strumienie w bibliotece .Net
Framework
Strumienie bezpośrednio podłączone do
źródła
System.IO.FileStream,
System.IO.MemoryStream,
System.Net.Sockets.NetworkStream
Strumienie pośredniczące
System.Security.Cryptography.CryptoStream,
System.IO.BufferedStream
Klasy używane do odczytu/zapisu z/do
strumienia
System.IO.BinaryReader,
System.IO.BinaryWriter
System.IO.StreamReader,
System.IO.StreamWriter
Operacje na pliku - przykład
FileStream zrodlo = null, cel = null;
byte [] bufor = new byte[10];
int liczbaBajtow = bufor.Length;
try{
zrodlo = new FileStream(nazwaZrodlo, FileMode.Open,
FileAccess.Read, FileShare.Read);
cel = new FileStream(nazwaCelu, FileMode.Create,
FileAccess.Write, FileShare.None);
do{
liczbaBajtow = zrodlo.Read(bufor, 0, bufor.Length);
cel.Write(bufor,0,liczbaBajtow);
}
while (liczbaBajtow == bufor.Length);
}
catch (IOException ex){
Console.WriteLine("Problemy z plikiem.\n{0}", ex.Message);
}
finally{
if (zrodlo != null)
zrodlo.Close();
if (cel != null)
//cel.Flush(); //Close - powinno automatycznie wywołać
cel.Close();
}
Operacje na strukturze systemu
plików
Directory
służy do bezpośrednich operacji na plikach i
katalogach
File
udostępnia metody do operacji na plikach
Path
operacje na tekście zawierającym informacje
o ścieżce dostępu do pliku lub katalogu
FileSystemWatcher
ustawienie kontroli na pliku lub katalogu
...
Podsumowanie
Definicja pliku
Strumienie - definicja
Strumienie w bibliotece .Net
Framework
Operacje na pliku - przykład
Operacje na strukturze systemu plików
Podsumowanie
Pytania sprawdzające
Laboratorium
Pytania sprawdzające
Co to jest plik?
Co to jest strumień?
Obiektów jakich klas użyjesz do
współpracy z plikami tekstowymi?
Laboratorium
Ćwiczenie 1:
Szyfrowanie pliku
Ćwiczenie 2:
Baza danych