АвтоАвтоматизацияАрхитектураАстрономияАудитБиологияБухгалтерияВоенное делоГенетикаГеографияГеологияГосударствоДомДругоеЖурналистика и СМИИзобретательствоИностранные языкиИнформатикаИскусствоИсторияКомпьютерыКулинарияКультураЛексикологияЛитератураЛогикаМаркетингМатематикаМашиностроениеМедицинаМенеджментМеталлы и СваркаМеханикаМузыкаНаселениеОбразованиеОхрана безопасности жизниОхрана ТрудаПедагогикаПолитикаПравоПриборостроениеПрограммированиеПроизводствоПромышленностьПсихологияРадиоРегилияСвязьСоциологияСпортСтандартизацияСтроительствоТехнологииТорговляТуризмФизикаФизиологияФилософияФинансыХимияХозяйствоЦеннообразованиеЧерчениеЭкологияЭконометрикаЭкономикаЭлектроникаЮриспунденкция

Открытие файла

Читайте также:
  1. A) открытие морского пути на Восток
  2. File — единственный объект в java.io, который работает непосредственно с дисковыми файлами.
  3. Wadmerger: назначение звуков wad-файлам и объектам
  4. Выберите расширение файла, которое соответствует звуковой информации
  5. Вывод сооб-я команды в конец файла с сохр-ем ранее записан инф-и (дозапись) или созд-ем нов файла осущ-ся
  6. Доступ к файлам
  7. Открытие карты состоялось 25 декабря 2014 года
  8. Первые российские университеты. Открытие Академии наук.
  9. Подпрограммы для работы с файлами
  10. Поиск данных файла
  11. Представление графической информации в компьютере. Информационный объем графического файла

Открываемые файлы могут использоваться для разных целей: одни для записи, другие для чтения а третьи и для того и для другого. При открытии файла мы указываем, что собираемся делать с файлом. Кроме того, нужно указать какой это файл: текстовый или двоичный. Каждый раз, когда ОС получает запрос на открытие файла, она создает поток и присваивает ему дескриптор (описатель). Дескриптор можно рассматривать как имя поток, хотя обычно он задается числом. Программа может открыть одновременно несколько потоков. Если мы выполняем некоторую операцию, то дескриптор определяет поток, в котором выполняется операция. Поэтому все функции для работы с файлами должны тем или иным образом получать через параметр этот дескриптор. На стандартном уровне, при открытии файла создается специальная структура - file (stdio.h), которая включает в себя дескриптор.

typedef struct {

short level; /* уровень заполнения буфера*/

unsigned flags; /*флаги состояния*/

char fd; /* дескриптор*/

short bsize; /* размер внутреннего буфера*/

} file

Структуры типа file создается при открытии файла. Сначала для нее динамически выделяется память, а потом эта память заполняется значениями, соответствующими данному потоку. На стандартном уровне для открытия файла используется функция fopen, которая позволяет открыть файл для чтения, записи и добавления в конец файла.

Файлы открывается при помощи функции fopen, у которой два аргумента. И там и там используются строки. File* fopen("имя_файла", "режим")

C:\\FVT\\DATA.TXT(нужно ставить по две \).

Режимы описываются с помощью комбинаций. R - открыть файл для чтения. W - открыть новый файл для записи. Если файл существует, то все в нем стирается. A - открыть файл для записи данных в его конец (то есть добавление). Если файл не существует, то будет создан.

Модификации: R+ - открыть файл для чтения и записи, если файл не существует, то будет ошибка. W+ - открыть файл для чтения и записи, при записи в существующий файл, информация удаляется. A+ - файл открывается для чтения и добавления. Если файл открывается в текстовом режиме, то добавляется буква T. Если в двоичном режиме, то B. Возможны варианты: zt, zb, z+t, z+b.

Если операция открытия выполнена успешно, то функция возвращает указатель на структуру типа файла. Если открыть файл не удалось, то функция возвращает NULL. Каждый раз, после того как в программе используется функция fopen, необходимо проверить завершилась ли операция открытия файла успехом.

Завершение работы с файлом означает вызов функции fclose(fp);


1 | 2 | 3 | 4 | 5 |

Поиск по сайту:



Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Студалл.Орг (0.002 сек.)