77973

Типизированные файлы с идентичными структурами

Лекция

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

Типизированный файл – это файл в котором записаны идентичные структуры. Например любой файл может считать файлом байтов – т.е можно читать байт за байтом, можно перейти сразу к любому байту по его номеру, можно сразу узнать сколько байт в файле, можно заменить любой байт на другой не перезаписывая файл.

Русский

2016-09-14

30.5 KB

0 чел.

Типизированные файлы

Типизированный файл – это файл в котором записаны идентичные структуры. Например любой файл может считать файлом байтов – т.е можно читать байт за байтом, можно перейти сразу к любому байту по его номеру, можно сразу узнать сколько байт в файле, можно заменить любой байт на другой не перезаписывая файл. Теперь все это в примерах:

Объявляем файл байтов:

var f:fileof byte

` b:Byte;

Ассоциируем файловую переменную с физическим фалом:

AssignFile(f,’c:\myfile.bin’);

Теперь мы можем либо перезаписать/создать файл:

Rewrite(f);

Либо открыть существующий для чтения и записи:

Reset(f);

Обратите внимание, что функцияReset хотя и имеет такой же формат как и для текстовых.

Функции работы с файлом:

read(f,b); - прочитать 1 байт

write(f,b); - записать 1 байт

seek(f,100); – поставить текущее положение считывания/записи на сотый байт

size(f); - прочитать количество байт в файле

eof(f); - узнать не является ли байт последним

Все эти функции не работают с файлами большими 2Gb

После работы файл надо закрыть;

CloseFile(f);

Приведенные выше механизмы будут работать с любым файлом, так как любой файл можно считать файлом байтов. Теперь где это можно использовать? В принципе везде, но в подавляющем большинстве случаев это будет очень неудобно, ведь скорость считывания при чтении по байтам будет на порядки более низкой чем другими способами. Однако в некоторый случаях этот способ может быть очень полезен. Например в программе вам надо заменить 100й байт файла на другой, или прочитать 100й байт файла, например во всяких читерских программах, при взломе и т.п. Здесь такой доступ будет весьма удобен. Гораздо более интересным представляется дальнейшее развитие технологии типизированных файлов(их еще 15 лет назад называли «Файлы прямого доступа»). Представим себе, что файл состоит не из байт а из более сложных структур. Например мы не имеем некотурую иформацию в виде;

TypeMyRec=Record

Name:string[100];

Age:byte;

Membership:Boolean;

Accounts:array[1..10]of integer;

End;

Обратите внимание, что все элементы записи точно типизированы, нет ни длинных строк, ни открытых массивов, ни объектов, другими словами, заранее точно известно сколько именно байт будет заниматьпеременная этого типа. Объявим переменную этого типа;

VarMyVar:MyRec;

и файл этого типа:

Var f:File of Rec;

Теперь мы можем читать и писать сразу целую структуру, абсолютно так же как и если бы это был один байт:

AssignFile(f,’c:\MyFile.rec’);

Rewrite(f);

My Var.Name:=’Vitaly’;

My Var.Age:=33;

My Var.Membership:=True;

My Var.Accounts[1]:=12345;

My Var.Accounts[2]:=34985;

Write(f,My Var);

Closefile(f);


 

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

78495. Специфика организации театрализованных игр старших дошкольников в ДОУ 50.6 KB
  В последние годы возросло внимание дошкольных работников к театрализованным играм которые представляют собой сложный вид деятельности детей и воспитателей. Педагогпрактик Т Неменова в работе ldquo;Развитие творческих проявлений детей в процессе театрализованных игрrdquo; отмечает что театр – одно из ярких эмоциональных средств формирующих вкус детей. Новоселова считает что театральноигровая деятельность обогащает детей новыми впечатлениями знаниями и умениями развивает интерес к литературе и театру формирует диалогическую...
78496. Исследование уровня музыкально-психомоторного развития у детей подготовительной группы 40.67 KB
  Исследование уровня музыкально-психомоторного развития у детей подготовительной группы Сохранение и укрепление здоровья дошкольников – одна из актуальнейших проблем нашего времени. Оптимизации двигательной активности детей в режиме детского сада способствуют занятия музыкально-ритмическими движениями которые являются одним из самых привлекательных видов деятельности ребенка. Определенная метрическая пульсация музыкального произведения с которой связаны движения ребенка вызывает согласованную реакцию всего организма ребенка а...
78497. Сенсорное развитие детей подготовительной к школе группы в продуктивных видах деятельности (рисовании) 61.93 KB
  Предмет исследования: определение уровней сформированности восприятия цвета детьми подготовительной к школе группы в рисовании. Цель объект предмет позволили определить задачи исследования: Изучить психолого-педагогическую методическую литературу по проблеме сенсорного развития детей; Описать особенности восприятия цвета детьми дошкольного возраста; Определить уровни сформированности восприятия цвета детьми подготовительной к школе группы МДОУ № 93 г. Гипотеза исследования предполагает что целенаправленная систематическая работа по...
78498. Развитие креативности у детей младшего школьного возраста 81.32 KB
  Развитие креативности у детей младшего школьного возраста Актуальность темы исследования обусловлена современным общественным развитием стремлением психолого-педагогической науки преодолеть негативные последствия как социального так и образовательного экспериментирования. Таким образом проблема развития креативности детей младшего школьного возраста занимает большое место в современной психологии и является актуальной. Цель: исследование специфики креативности детей младшего школьного возраста. Предмет исследования: процесс развития...
78499. Развитие креативности младших школьников в условиях игровой деятельности 123.53 KB
  Развитие креативности младших школьников в условиях игровой деятельности Актуальность исследования проблемы креативности детей младшего школьного возраста обусловлена необходимостью развития творческих качеств личности созданием условий для формирования основных компонентов творческого мышления. Задача развития креативности общей способности к творчеству стоит и перед первой образовательной ступенью начальной школой. Развитие креативности имеет свои особенности в каждом возрастном периоде причем различные факторы влияющие на...
78500. Арт-техники в практике индивидуальной работы психолога с подростками 1.03 MB
  Рисунок который был сделан на первой встрече называется Мое настроение рисунок. Кате сначала было сложно включиться в работу но когда она сосредоточилась то быстро изобразила рисунок на предложенную тему. Она работала старательно и помощи ей не потребовалось в течение всего занятия она ясно поняла что и как надо сделать. Рисунок полученный в результате был очень темным и скудным по своей экспрессии и имел диагностический характер.
78501. Влияние научно – исследовательской деятельности старшеклассников на развитие креативности 43.82 KB
  Влияние научно – исследовательской деятельности старшеклассников на развитие креативности Креативность является сравнительно новой психологической характеристикой появившейся в психологии в начале 50х гг. Исследования креативности за рубежом начались раньше чем в России. Активно разрабатываются и адаптируются западные диагностические методики измерения креативности на российских выборках. Исследование креативности и организации школьных научных обществ с различных точек зрения больше носит теоретико-эмпирический характер и имеет...
78502. Развитие креативности в старшем школьном возрасте 67.58 KB
  Развитие креативности в старшем школьном возрасте На современном этапе в российском обществе в социально-экономической сфере науке технике происходят глобальные изменения. Научный интерес вызывают концепции креативности Дж. Цель исследования: изучение специфики и особенностей развития креативности в старшем школьном возрасте. Предмет исследования процесс развития креативности в старшем школьном возрасте.
78503. Развитие художественного интереса учащихся старших классов на материале музееведения 382.5 KB
  Вся идеология работы с подрастающим поколением должна строиться на культуре, традициях, эстетическом воспитании и художественном развитии. Очень важно, чтобы подрастающее поколение совершенствовалось и развивалось не только в музыкальном, литературно-художественном плане