Sign in Join
Wiki copytemporary

Basic Pascal Tutorial/Chapter 2/Files/bg: what changed

Revision 0 to 1. Removed lines have a minus sign; added lines have a plus sign.

Title: Basic Pascal Tutorial/Chapter 2/Files/bg

OldNewLine
1+## Файлове
2+
3+*(author: Tao Yue, state: unchanged)*
4+
5+Четенето от файл вместо от конзолата (клавиатурата) може да се извърши чрез:
6+
7+``` pascal
8+read (file_variable, argument_list);
9+write (file_variable, argument_list);
10+```
11+
12+Това важи и за `readln` and `writeln`. Променливата **file_variable** се декларира по следния начин:
13+
14+``` pascal
15+var
16+ ...
17+ filein, fileout : text;
18+```
19+
20+Типът `text` означава, че файлът е обикновен текстов файл.
21+
22+След декларирането на променлива за файла и преди четене от или писане в него, трябва да свържем променливата с името на файла на диска и да отворим файла. Това може да стане по един от двата начина. Обикновено:
23+
24+`reset (file_variable, 'filename.extension');`\
25+`rewrite (file_variable, 'filename.extension');`
26+
27+Процедурата `reset` отваря файла за четене, а `rewrite` отваря файла за писане. Файл отворен с `reset` може да се използва само с `read` и `readln`. Файл отворен с `rewrite` може да се използва само с `write` и `writeln`.
28+
29+Турбо Паскал въведе **assign** нотацията. Първо присвоявате име на файл на променлива, след което извиквате `reset` или `rewrite`, като използвате само променливата.
30+
31+``` pascal
32+assign (file_variable, 'filename.extension');
33+reset (file_variable);
34+```
35+
36+Методът за представяне на пътя и името на файла се различава в зависимост от операционната система. В Windows се използват обратни наклонени черти и букви на устройството защото произлиза от DOS (e.g. `c:\directory\name.pas`), докато FreeBSD, macOS и Linux използват '/' поради наследяването им от UNIX.
37+
38+След като приключите с файла, можете да го затворите с:
39+
40+``` pascal
41+close (file_variable);
42+```
43+
44+Ето пример за програма, която използва файлове. Тази програма е написана за Turbo Pascal и DOS и ще създаде file2.txt с първия символ от file1.txt:
45+
46+``` pascal
47+program CopyOneByteFile;
48+
49+var
50+ mychar : char;
51+ filein, fileout : text;
52+
53+begin
54+ assign (filein, 'c:\file1.txt');
55+ reset (filein);
56+ assign (fileout, 'c:\file2.txt');
57+ rewrite (fileout);
58+ read (filein, mychar);
59+ write (fileout, mychar);
60+ close(filein);
61+ close(fileout)
62+end.
63+```
64+
65+---
66+*From the Free Pascal wiki, page "Basic Pascal Tutorial/Chapter 2/Files/bg", as it stood on 2022-08-20 after a change by Kai Burghardt, out of the wiki's dump of 2024-05-26. Copyright stays with the author who wrote it, according to the old wiki's [[Licensing]] page. If you have concerns about this material, [message the admin](/wiki-contact).*

Back to history