fopen | <STDIO.H> |
Składnia: FILE *fopen(const char *NazwaPliku, const char *tryb);
gdzie: NazwaPliku - nazwa otwieranego strumienia; tryb - tryb dostępu i transmisji danych. Opis
Zwracana wartość:
Przykład: /* Program tworzy kopię pliku AUTOEXEC.BAT i zapisuje ją w pliku AUTOEXEC.BAK */ #include <stdio.h> #include <string.h> int main(void) { FILE *in, *out; char bufor[200]; /* OTWIERANIE PLKÓW */ // Jeżeli nie uda się otworzyć pliku, to komunikat i koniec if ((in = fopen("C:\\AUTOEXEC.BAT", "rt")) == NULL) // otwarcie w trybie tekstowym [t], tylko do odczytu [r] { printf("Nie można otworzyć pliku wejściowego.\n"); return 1; } // Jeżeli nie uda się otworzyć pliku, to komunikat i koniec if ((out = fopen("C:\\AUTOEXEC.BAK", "wt")) == NULL) // otwarcie w trybie tekstowym [t], do zapisu [w] // jeśli pliku nie ma, to będzie utworzony // jeśli jest, to jego zawartość zostanie skasowana { printf("Nie można otworzyć pliku wyjściowego.\n"); return 1; } while (!feof(in)) // dopóki nie ma końca pliku wejściowe { fgets(bufor,200,in); // odczyt z pliku wejściowego fputs(bufor, out); // zapis do pliku wyjściowego } fclose(in); // zamknięcie pliku wejściowego fclose(out); // zamknięcie pliku wyjściowego return 0; } |
freopen | <STDIO.H> |
Składnia: FILE *freopen(const char *NazwaPliku, const char *tryb, FILE *stream);
gdzie: NazwaPliku - nazwa otwieranego strumienia; tryb - tryb dostępu i transmisji danych. stream - wskaźnik do otwartego strumienia, który zostanie zastąpiony wskaźnikiem do NazwaPliku. Opis
Zwracana wartość:
Przykład: #include <stdio.h> int main(void) { /* przekierowanie standardowego wyjścia do pliku */ if (freopen("STDOUT.TXT", "w", stdout) == NULL) fprintf(stderr, "Błąd przekierowania stdout\n"); printf("Ten komunikat powinien być zapisany do pliku."); fclose(stdout); return 0; } |
Tryb | Opis |
r | Plik otwierany tylko do czytania. |
w | Założenie pliku do zapisu. Jeżeli pliku nie ma, to zostanie założony. Jeżeli plik o podanej nazwie już istnieje, to jego dotychczasowa zawartość zostanie nadpisana. |
a | Tryb dopisywania. Otwiera istniejący plik na końcu do dopisywania lub tworzy nowy plik, jeżeli podany nie istnieje. |
r+ | Otwiera istniejący plik do aktualizacji (czytania i zapisywania). |
w+ | Tworzy nowy plik do aktualizacji (czytania i zapisywania). Jeżeli plik o podanej nazwie już istnieje, to jego dotychczasowa zawartość zostanie nadpisana. |
a+ | Otwiera plik na końcu do aktualizacji (czytania i zapisywania). Jeżeli pliku nie ma, to zostanie założony. |
Tryb | Opis |
t | ryb tekstowy z uwzględnieniem znaków końca wiersza i końca pliku. |
b | Tryb binarny: wszystkie znaki w pliku są danymi. |