Отваряне на файл за изход

Преди да изведете файл, той трябва да бъде отворен. Ако програмата, която генерира изходния файл, вече е използвана, тогава е възможно файлът с резултатите от работата на програмата да е вече на диска. Следователно програмистът трябва да реши какво да прави със стария файл: да замени старите данни с нови или да добави нови данни към стария. Начинът за използване на стария вариант се определя по време на отваряне на файла.

Възможни са следните режими на отваряне на файл за запис на данни в него:

  • презапис (запис на нов файл върху съществуващ или създаване на нов файл);
  • добавяне към съществуващ файл.

За да отворите файл в режим на създаване на нов файл или замяна на съществуващ, трябва да извикате процедурата Rewrite (f), където f е файлова променлива от типа TextFile.

За да отворите файл в режим на добавяне към вече съществуващи данни в този файл, трябва да извикате процедурата Append (f), където f е файлова променлива от типа TextFile.

На фиг. 7.1 показва диалогов прозорец на програма, която пише или добавя към текстов файл.

отваряне

Фигура: 7.1. File Writer - Добавяне към диалоговия прозорец File

Листинг 7.1 показва процедурата, която се извиква чрез натискане на командния бутон Да напише. Той отваря файл в режим на създаване на нов или замяна на съществуващ файл и записва текста в полето Memo1 компонент.

Името на файла трябва да се въведе, докато работите в полето Editl. Можете да посочите предварително дефинирано име на файл по време на проектиране за формуляра за кандидатстване. За да направите това, трябва да присвоите стойност, например test.txt, на свойството Edit1.Text.

Листинг 7.1. Създайте нов или заменете съществуващ файл

процедура TForm1.Button1Click (Изпращач: TObject);

f: TextFile; // файл

fName: String [80]; // Име на файл

Пренаписване (f); // отворен за пренаписване

за i: = 0 до Memol.Lines.Count do // редовете са номерирани от нула

CloseFile (f); // затваряме файла

MessageDlg ('Данните са записани във файл', mtlnformation, [mbOk], 0);

Листинг 7.2 показва процедурата, която се извиква чрез натискане на командния бутон Добави към. Той отваря файла, наречен в полето Edit1, и добавя към него съдържанието на полето Memol.

Листинг 7.2. Добавяне към съществуващ файл

процедура TForm1.Button2Click (Изпращач: TObject);

f: TextFile; // файл

fName: String [80];. // име на файл

i: цяло число; започнете

Приложение (е); // отворен за добавяне

за i: = 0 да се Memo1.Lines.Count do // редове са номерирани от нула

CloseFile (f); // затваряме файла

MessageDlg ('Данни, ДОБАВЕНИ във файл', mtInformation, [mbOk], 0);