Функция fopen() создает и сопоставляет поток с файлом, определенным по имени файла. Атрибут режима представляет собой последовательность байтов, указывающую тип предоставленного доступа к файлу. Аргумент позиционирования предшествует дополнительным аргументам ключевого слова в атрибуте режима. Для этих аргументов позиционирования следует использовать строчные буквы. Аргументы ключевого слова могут быть указаны как в верхнем, так и в нижнем регистре. Для их разделения используются кавычки. Было бы только одно указание объявленного ключевого слова.
Любой файл, к которому осуществляется доступ, часто определяется по имени файла, данному функции fopen(). Существует множество рекомендаций по именованию файлов, которые мы будем использовать при разработке приложения. Настраиваемые символы и читаемые символы расположены в разделах в текстовых файлах. В конце каждой строки используется символ новой строки. Система может вводить или преобразовывать командные символы в выходной текстовый поток.
Двоичные файлы состоят из строки символов. Программа не будет преобразовывать управляющие биты при вводе или выводе для этих файлов. В этой статье мы рассмотрим, как использовать функцию fopen() для выполнения различных операций в C.
Используйте функцию Fopen()
Метод fopen() обычно генерирует указатель файла, который используется для открытия определенного файла. Мы можем использовать ссылку на файл после того, как мы получили доступ к файлу, чтобы позволить компилятору выполнять над ним операции ввода и вывода.
#include <stdio.h>
#include <stdlib.h>
int main()
{
FILE *file_2 = NULL;
file_2 = fopen («file_2.txt», «w+x»);
if(file_2 == NULL)
{
printf(«File does not created\n«);
exit(1);
}
else
{
printf(«File is created\n«);
}
fclose(file_2);
return 0;
}
Чтобы запустить код, мы должны ввести два заголовочных файла. Для объявления функций ввода и вывода мы используем заголовочный файл . Второй заголовочный файл содержит методы управления памятью, преобразования типов данных, формирования псевдослучайных чисел, мониторинга процессов, сортировки и обработки, математических операций, а также многобайтовых или расширенных символов, которые являются надежными и эффективными для программистов на C.
Теперь на следующем шаге мы применяем функцию main() и начинаем кодирование в теле этой функции. Мы создаем конструктор для файла и устанавливаем для него значение «NULL». Далее мы объявляем переменную для создания файла, применяя функцию fopen(). Этот метод создает поток и обращается к файлу, путь к которому кажется строкой, на которую ссылается имя.
На строку ссылается параметр режима. Файл будет разблокирован в заданном режиме «w+x». Этот режим открывает определенный файл для чтения и записи. В дополнение к этому, если указанный файл присутствует, этот режим делает этот файл пустым. Здесь «x» — это новый вариант, и это эксклюзивная форма создания и открытия. Если файл присутствует или не будет создан, доступ к этому файлу через эксклюзивный формат («x») невозможен.
Теперь мы применяем условие if-else, чтобы проверить, создан ли определенный файл или нет. Если указанный файл равен NULL, то функция printf() выводит «Файл не создается»; в противном случае функция printf() печатает «Файл создан». В конце кода мы используем функцию fclose(). Метод fclose() завершает файл, на который ссылается указатель файла ’file_2′.
Когда мы хотим перезаписать определенный файл, используя режим «w+x», функция fopen() возвращает NULL, избегая перезаписи файла. Таким образом, мы получаем этот тип вывода.
Запишите данные в файл
В C fopen() является библиотечной функцией. Он всегда открывает файлы и выполняет различные процессы, такие как чтение, запись и переключение между режимами. Принимая во внимание, что если файл уже существует, к нему обращаются; в противном случае будет создан новый файл.
Прежде всего мы интегрируем два заголовочных файла #include и #include . Они используются для разных целей. Для стандартного вывода и ввода мы используем заголовочный файл . Этот заголовочный файл объявляет функции printf() и scanf().
Теперь мы собираемся запустить код, чтобы продемонстрировать использование функции fopen(). Мы инициализируем функцию main(). В теле функции мы объявляем указатель ’file_1′ на FILE. В дополнение к этому мы хотим сгенерировать файл, поэтому применяем функцию fopen(). Эта функция содержит параметры: имя файла «file_1» и режим «w+» для доступа к этому файлу. Режим ’w+’ ищет файл. Данные файла будут обновлены, если он уже существует.
Однако новый файл создается только в том случае, если файл не может существовать. Теперь функция printf() используется для вставки данных «Информационные технологии» в файл «file_1». В конце концов, чтобы закрыть файл, на который указывает ’file_1′, применяется функция fclose().
#include <stdio.h>
#include <stdlib.h>
int main()
{
FILE* file_1;
file_1 = fopen(«file_1.txt», «w+»);
fprintf(file_1, «%s %s %s», «Information», «Technology»);
fclose(file_1);
return 0;}
Когда мы запустим этот код, будет создан новый файл с именем «file_1» с содержимым «Информационные технологии».
Read the file
Здесь функция fopen() используется для открытия доступного файла. Это указано в заголовочном файле ’’. Теперь, если мы хотим изучить файл, мы будем использовать следующую программу, которая может получить доступ к файлу и показать его содержимое.
#include <stdio.h>
int main()
{
FILE* file_1;
int display;
file_1 = fopen(«file_1.txt», «r»);
while (1) {
display = fgetc(file_1);
if (feof(file_1))
break;
printf(«%c», display);
}
fclose(file_1);
return 0;}
В начале программы мы включаем заголовочный файл ’’ для целей ввода и вывода. Чтобы запустить код, мы должны объявить тело функции main(). Здесь мы создаем указатель на FILE. Тем временем мы инициализируем отображаемые переменные, имеющие тип данных int. Теперь мы создаем новую переменную с именем «file_1».
Далее мы определяем функцию fopen(). Здесь мы передаем имя файла «file_1», доступ к которому осуществляется в режиме чтения «r». В этом режиме мы извлекаем файл. После этого файл доступен только для чтения. Если файл успешно открыт, функция fopen() импортирует его в кеш и создает ссылку на первое слово в файле.
Затем функция fopen() предоставляет NULL, если к файлу иногда нет доступа. Кроме того, мы используем цикл while для извлечения каждого слова из файла. Мы читаем файл с помощью функции fgetc(). Это означает, что он может предоставить значение, достаточное для сохранения беззнакового символа всякий раз, когда он получает обычное слово из файла. Но мы не можем получить буквенное значение, если находимся в конце любого файла; в этой ситуации функция fgetc() может предоставить «EOF», что будет означать, что мы получили конец файла.
Чтобы отобразить каждое слово файла, мы применяем функцию printf(). В дополнение к этому мы используем функцию fclose() для закрытия файла, на который указывает ’file_1′.
После выполнения вышеуказанной программы мы получаем данные «Информационные технологии» файла «file_1».
Заключение
Мы видим методы использования функции fopen() для открытия определенного файла. Затем мы указываем параметр «режим» для этой функции. Мы добавили три уникальных примера, раскрывающих концепцию функции fopen() в языке программирования C. Поэтому из-за этого мы записываем в этот файл или читаем содержимое файла.