Не сте регистриран! Регистрирайте се БЕЗПЛАТНО, за да използвате услугите на сайта!

   Рубрики
 
 
 
 

 Форуми
» SEO и оптимизация
» Всичко за PHP и Perl
» Всичко за C, C++ и .NET
» Всичко за Java и JSP
» Всичко за SQL и MySQL
» Всичко за XHTML и CSS
» Презентация на сайтове
 Структура на едно Delphi-приложение 3
  1. Структура на едно Delphi-приложение 3
  2. Структура на едно Delphi-приложение 3 - II
  3. Структура на едно Delphi-приложение 3 - III
     
Автор  dweray (05.04.2006 17:14)  съобщение до автора
Погледнат  4520 пъти  добави към любими
Оценка  добави коментар
Гласове  4  изпрати на приятел
Коментари  (0)  абонирай се за Delphi
    Страница 2 / 3

 



Работа с файлове и записи

Записите представят хетерогенно множество от елементи. Елементите се наричат полета и са независими помежду си. Декларацията на тип запис изисква идентификатор и тип на всяко едно от полетата:

CODE
1
2
3
4
5
6
7
8
9
10
11
12
13
type recordTypeName = record
  fieldList1
: type1;
  ...
 
fieldListn: typen;
end;
Пр.:
type
  TDateRec
= record
    Year
: Integer;
   
Month: (Jan, Feb, Mar, Apr, May, Jun,
           
Jul, Aug, Sep, Oct, Nov, Dec);
   
Day: 1..31;
 
end;

Полетата се представят в паметта като отделни променливи. Декларацията на TDateRec не заделя памет за отделните полета. Това става, едва когато създадете конкретна инстанция по следния начин:
CODE
1
var Record1, Record2: TDateRec;
Достъп до полетата имате посредством името на променливата запис и идентификатор на полето:
Пр.:
CODE
1
2
3
Record1.Year := 1904;
Record1.Month := Jun;
Record1.Day := 16;
Когато многократно се обръщате към полетата на един и същ запис, използвайте оператора with:
CODE
1
2
3
4
5
6
with Record1 do
begin
  Year
:= 1904;
 
Month := Jun;
 
Day := 16;
end;

Файлът е подредено множество от еднотипни елементи. За да декларирате файлов тип, използвайте следния синтаксис:
CODE
1
type fileTypeName = file of type
По този начин се декларират типизираните файлове. За да декларирате нетипизиран файл използвайте само ключовата дума file.
Пр.:
CODE
1
2
3
4
5
6
7
type
  PhoneEntry
= record
    FirstName
, LastName: string[20];
   
PhoneNumber: string[15];
   
Listed: Boolean;
 
end;
 
PhoneList = file of PhoneEntry;

Съществуват два основни типа файлове:
    - Двоичен файл - съхранява данните във формат, с който са представени в оперативната памет;
    - Текстов файл - съхранява данните като дълъг списък от символи.

Физическият карай на файла се отбелязва от т.нар. индикатор за край на файл, който е необходим на операционната система при четене и запис в него. Всеки ред на текстовия файл се ограничава от специален символ или двойка символи, наречени индикатор за край на ред.
Операционната система разпознава файла по неговото име, което се съхранява в списък на директорията. Този списък се създава и поддържа от операционната система и съдържа информация за всеки файл в кокретна директория (име, тип, размер). За да получите достъп до външен файл (разположен във външната активна памет) по време на изпълнение на прогамата, е необходимо да създадете файлова променлива. За текстов файл файловата променлива се декларира със стандартен идентификатор Text или TextFile, а за двоичен файл- със стандартен идентификатор File.
Процедурата AssignFile асоциира име на външен файл с файлова променлива :
CODE
1
procedure AssignFile(var F; FileName: string);
Когато параметърът FileName е празен, F се асоциира със стандартен входен или изходен файл.
За да създадете и отворите нов файл, използвайте процедурата Rewrite:
CODE
1
procedure Rewrite(var F: File [; Recsize: Word ] );
F е променлива от произволен файлов тип, асоциирана с външен файл посредством AssignFile. Recsize е незадължителен параметър.
Процедурата Append подготвя съществуващ файл за добавяне на текст в края му.
CODE
1
procedure Append(var F: Text);
F е променлива от тип текстов файл, която трябва да бъде асоциирана с външен файл посредством AssignFile.
Пр.:
CODE
1
2
3
4
5
6
7
8
9
10
11
12
13
var
  F
: TextFile;
 
S: string;
begin
 
if OpenDialog1.Execute then                      { Display Open dialog box }
 
begin
    AssignFile
(F, OpenDialog1.FileName);   { File selected in dialog box }
   
Reset(F);
   
Readln(F, S);                                 { Read the first line out of the file }
   
Edit1.Text := S;                             { Put string in a TEdit control }
   
CloseFile(F);
 
end;
end;

За да терминирате връзката мъжду файловата променлива F и съответстващия и външен файл, използвайте процедурата CloseFile:
CODE
1
procedure CloseFile(var F);
Аналог на тази процедура е процедурата Close в езика Pascal.
За да отворите съществуващ файл, използвайте процедурата Reset:
CODE
1
procedure Reset(var F [: File; RecSize: Word ] );
Когато използвате процедурата Reset, за да укажете режима на достъп до файла, използвайте променливата FileMode:
CODE
1
var FileMode: Byte;
По подразбиране тази променлива има стойност 2, което означава, че файлът се отваря както за четене, така и за запис. Когато FileMode има стойност 0, файлът се отваря само за четене, а когато има стойност 1- само за запис.
Пр.:
CODE
1
2
3
4
5
6
7
8
var
  F
: file;
begin
  AssignFile
(F, FileName);
 
FileMode := 0( Set file access to read only }
 
Reset(F);
 
CloseFile(F);
end;
За да проверите дали файловия показалец указва край на линия, използвайте функцията Eoln:
CODE
1
function Eoln [(var F: Text) ]: Boolean;
Функцията Eof проверява дали текущата файлова позиция е край на файл:
CODE
1
2
function Eof(var F): Boolean;
function Eof [ (var F: Text) ]: Boolean;



 << Предишна страница Следваща страница >> 


Ключови думи: delphi приложение труктура на приложение


Още уроци от тази рубрика


 
  • Подобни теми от myLinks
 

 За автора: dweray  
Всички мои статии можете да прочетете също на http://pcaddict.info
   
 1 посетител чете този урок (0 потребители и 1 гост)  
Активни потребители: ---
   
  

Еmail  
 

 

 
  • Интересно от Софтуер
 



IT-PLACE.NET © 2004 - 2008