Pliki
klasa CFile
|
|
-
-
Przy obsłudze plików w
aplikacjach pisanych przy użyciu MFC zalecane jest
stosowanie klasy CFile i pochodnych
-
MFC dostarcza mechanizm serializacji,
dzięki czemu bardzo duża część operacji
na plikach może być wykonywana automatycznie
[początek strony]
-
-
Klasa CFile jest bazową
klasą MFC dla obiektów obsługi plików
-
Jest odpowiedzialna za binarny,
niebuforowany zapis i odczyt plików
-
Jest podstawową klasą obsługi
plików wykorzystywaną w serializacji
-
Podstawowe operacje:
-
operacje wykonywane na
nieotwartych plikach (np. zmiana nazwy, atrybytów, usunięcie)
- wykonywane przez odpowiednie funkcje statyczne klasy CFile
-
otwieranie pliku - CFile::Open
- parametrem jest sposób otwarcia pliku definiowany przy
pomocy stałych z klasy CFile, np CFile::modeCreate,
CFile::modeReadWrite
- istnieje konstruktor z większą liczbą
parametrów umożliwiający otwarcie pliku tuż po
stworzeniu obiektu
-
zamykanie pliku - CFile::Close
- ta metoda jest automatycznie wołana z destruktora
jeśli plik nie został zamknięty
-
odczyt, zapis do pliku - CFile::Read,
CFile::Write
- binarny, niebuforowany
-
przesuwanie się po pliku -
CFile::Seek
[początek strony]
-
-
CStdioFile
-
daje obsługę plików
analogiczną do funkcji fopen języka C
-
obsługa plików tekstowych
- automatyczna zamiana znaków sterujących końca
wiersza
- metody odczytu, zapisu ciągu znaków - CStdioFile::ReadString,
CStdioFile::WriteString
-
klasa CInternetFile
dziedziczy z CStdioFile, daje obsługę plików
transmitowanych za pośrednictwem internetu
- nie jest używana bezpośrednio, stosowane sa klasy
pochodne: CGopherFile i CHttpFile
-
CMemFile
-
obsługa pamięci jako
pliku
-
dwie możliwości:
- zalokowanie pamięci dla pliku pamięciowego,
zalokowany blok pamięci zostanie automatycznie zniszczony
w destruktorze
- dołączenie obiektu pliku pamięciowego do już
istniejącego bloku pamięci przy pomocy metody
CMemFile::Attach
-
klasa CSharedFile
dziedziczy z CMemFile - daje możliwość
obsługi jako plików bloków pamięci alokowanych
przy pomocy funkcji GlobalAlloc
- pamięć alokowana przez GlobalAlloc może
być współużytkowana przez showek (clipboard),
DDE (Dynamic Data Exchange) i OLE/COM
- nie jest to pamięć, która może być
dzielona pomiędzy procesami
-
CSocketFile
[początek strony]
[początek strony]
|