69705

Читання і запис в бінарному режимі

Лекция

Информатика, кибернетика и программирование

Для кожного відкритого файлу система зберігає величину яка називається покажчиком поточної позиції файлу. При відкритті файлу цей покажчик встановлюється на початок файлу. З кожним викликом функції читання файлу покажчик поточної позиції зрушується...

Украинкский

2014-10-09

53.5 KB

0 чел.

Тема 25: Читання і запис в бінарному режимі

Ми вже уміємо відкривати файли. Тепер поговоримо про їх обробку, тобто читанні і записі. На мал. 11.1 і 11.2 показано, як відбувається читання і запис бінарних файлів.

Для кожного відкритого файлу система зберігає величину, яка називається покажчиком поточної позиції файлу. При відкритті файлу цей покажчик встановлюється на початок файлу. З кожним викликом функції читання файлу покажчик поточної позиції зрушується на певну кількість байтів (див. мал. 11.1).

Line1\nLine2\Line3<- Line1\nLine2\Line3<- Line1\nLine2\Line3<-

Л Л Л

після відкриття читаємо 7 байтів досягнутий кінець файлу

fread(Sf. 7)

Мал.   11.1. Читання бінарного файлу

Line1\nLine2MJne3<- Line1\nBYTe2\Line3<- Нагадаю, що \n   —    один

символ. Запис даних в

зрушуємо покажчик на Записуємо три байти

7 байтів вут фаил починається з позиції

на яку указує покажчик (див. мал. 11.2).

Мал.   11.2. Запис бінарного файлу тт

і        ^ Читання двійкового (бинарно-

го) файлу здійснюється

функцією fread(). Даній функції потрібно передати всього два параметри -идентификатор файлу і кількість символів, яку потрібно прочитати. Функція повертає рядок, в якому будуть прочитані символи. Якщо

як параметр функції буде вказано більше число символів, чим є у файлі насправді, то помилки не буде — просто буде виведено все, що є.

Приклад читання двійкового файлу приведений в лістингу 11.1. Лістинг 11.1. Читання двійкового (бінарного) файлу

$f   =   fopen("/home/den/lines.txt","r")    or   die("0um6Ka   при   відкритті   файла\ п"); $s   =   fread($f,    4); echo   $s;

Мал.   11.3. Чтенієдвоїчного(бінарного) файлу

Ми відкрили файл в бінарному режимі "тільки читання". Потім ми прочитали 4 байти і записали їх в рядок $s, яка була виведена на екран. На мал. ll.3 ми бачимо сам файл lines.txt, а також виведення сценарію — рядок Line.

Для запису символів у файл використовується функція fwrite(), якою потрібно передати два параметри — ідентифікатор файлу і рядок, який буде записаний у файл.

У приведеному вище прикладі після читання чотирьох байтів покажчик зупинився на п'ятому байті: наступна операція читання або запису почнеться з п'ятої позиції. Це означає, що якщо нам потрібно записати що-небудь після символів Line, ми можемо відразу після операції читання записати потрібні нам дані. Але адже ми відкрили файл в режимі

читання, тому зараз запис неможливий. Виправимо це упущення. Напишемо сценарій, який працюватиме так:

Відкриває файл в режимі запису.

«Перемотує» файл на п'яту позицію, тобто встановлює
покажчик поточної позиції.

Записує інформацію у файл.

| Зберігає зміни у файлі.
Текст сценарію приведений в лістингу 11.2.

Лістинг 11.2. Запис в бінарний файл

<?

$f   =   fopen("/home/den/lines.txt","r+")    or   с11е("0шибка   при   відкритті   файла\ п"); fseek($f,    4,    SEEK_SET); fwr.ite ($f, "BYTE") ; fflush($f); ?>


 

А также другие работы, которые могут Вас заинтересовать

47804. Вікова фізіологія. Опорний конспект лекцій 10.52 MB
  Навпаки в наркоманів та алкоголіків біологічний годинник набагато випереджає хронологічний: зовні вони виглядають на 10 років старшими за свій вік мають мляву мускулатуру опущені плечі ледве пересуваються; пам’ять та інші розумові процеси сповільнені емоції знебарвлені. На відміну від паспортного віку де міжвіковий інтервал дорівнює одному рокові біологічний або анатомофізіологічний вік обіймає ряд років життя людини протягом яких відбуваються певні біологічні зміни. Формування людського організму продовжується після...
47806. Українська мова. Тексти лекцій 2.87 MB
  У них систематизовано наукові знання про мову професійного спілкування; норми літературної мови; стилістичну систему сучасної української літературної мови; види типи і форми фахового спілкування; види публічного мовлення як важливого способу комунікації; вимоги до складання текстів документів; науковий стиль і його засоби у професійній діяльності; проблеми перекладу й редагування наукових текстів тощо. ЗАКОНОДАВЧІ ТА НОРМАТИВНОСТИЛЬОВІ ОСНОВИ ПРОФЕСІЙНОГО СПІЛКУВАННЯ Лекція 1. Державна мова – мова професійного спілкування План Мета...
47807. История и методология Наук о Земле как самостоятельная дисциплина 1.17 MB
  Место геологии и географии в системе естественных наук. Донаучный этап развития геологии и географии 4. Научный этап развития геологии и географии 7. Становление научных основ в геологии и географии первая половина XIX в.
47808. Информационные технологии в юридической деятельности 15.9 MB
  Основы защиты информации: Учебное пособие. Правовое обеспечение процессов информатизации представляет совокупность нормативных актов принимаемых на различных уровнях власти и управления регулирующих комплекс общественных отношений связанных с созданием и использованием информации и перспективных ИТ. Основные понятия Понятия информации в современной науке и технике Функционирование любой системы управления в технике природе обществе в первую очередь основано на сборе обработке и анализе информации поступающей из окружающей среды...
47809. ОБЩЕЕ УЧЕНИЕ О БОЛЕЗНИ ПАТОГЕНЕЗ 1.56 MB
  Главный критерий болезни нарушение трудоспособности. Болезнь нарушение жизнедеятельности организма вызванное действием чрезвычайных раздражителей характеризуются снижением работоспособности приспособляемости организма к условиям окружающей cреды и одновременным развитием не только патологических но и компенсаторноприспособительских реакций направленных на восстановление нарушенных функций и структур лежащих в основе выздоровления. психический психогенный нормальная или измененная нарушение ВНД сопровожд. Направлены...
47810. Краткий курс лекций по патологической физиологии 1.34 MB
  Патофизиология массы крови. Курс состоит из 33х лекций в которых разбираются вопросы общей патологии этиология патогенез общий адаптационный синдром иммунитет и аллергия воспаление лихорадка и гипертермия и лекций посвященных частной патофизиологии отдельных систем организма крови дыхания кровообращения печени почек пищеварения нервной и эндокринной. Хотя нужно отметить что основная масса показателей может колебаться в определенной степени например температура тела биохимический или клеточный состав крови. Возникает...
47811. Безопасность жизнедеятельности. Курс лекций 1.74 MB
  Основы физиологии труда. Вредные условия труда. Основные принципы государственной политики в ОТ охране труда. Законодательная база охраны труда в Российской Федерации.
47812. ЭКОНОМИЧЕСКАЯ ТЕОРИЯ 2.03 MB
  Потребности как предпосылка производства. Ресурсы и факторы производства Продукт как результат производства фирмы.3 Издержки производства: явные и неявные внешние и внутренние постоянные и переменные