Отваряне и затваряне на файлове, програмиране C и C

В C ++ файл се отваря чрез обединяване с поток. Има три вида потоци: вход, изход и вход/изход. За да отворите входен поток, трябва да декларирате потока като обект от класа ifstream. За да отворите изходен поток, трябва да го декларирате като обект от класа на потока. Потоци, които­Тези, които правят едновременно въвеждане и извеждане, трябва да бъдат обявени като обекти от клас fstream. На­например, следният програмен фрагмент създава един входен поток, един изходен поток и един поток, способен да прави едновременно вход и изход:

ifstream в; // вход

извън потока; // изход

fstream и двете; // вход и изход

След създаването на поток единственият начин да го свържете с файл е да използвате­извикване на функцията oren (). Тази функция е член на всеки от трите класа нишки. Той има следния прототип:

void open (const char "име на файл, режим int, int access = filebuf: openprot);

Тук името на файла е името на файла и може да включва път. Стойността на режима е дефинирана­Как се отваря файлът. Режимът може да приема една или повече от следните стойности (дефинирани в заглавния файл fstream.h):

Можете да комбинирате две или повече от тези стойности, като използвате побитово ИЛИ.

ios: app показва, че изходът ще бъде добавен в края на файла. Тази стойност може да се използва само за файлове, за които е възможен изход. Използването на ios: ate води до търсене в края на файла, когато файлът се отвори.

ios: in указва възможността за въвеждане от файл. ios: out показва, че файлът е за изход­Да. Създаването на поток с помощта на ifstream определя режима на въвеждане, а създаването на поток с използване на потока определя изходния режим, в тези случаи няма нужда да се посочва­горните стойности.

ios: nocreate указва режим, в който функцията open () може да отвори само същество­файл. ios: noreplace не позволява отваряне на файл на функцията oren (), ако файлът вече съществува, но атрибутите ios: ate или ios: app не са посочени.