Sign in Join
Wiki copytemporary

untyped files/pl: what changed

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

Title: untyped files/pl

OldNewLine
1+Pliki tekstowe nietypowane
2+
3+## Plik tekstowy nietypowany
4+
5+Nietypowany plik tekstowy nadaje się do przetwarzania plików o dowolnym rozmiarze. W przypadku plików bez typu, zawartość pliku jest odczytywana wiersz po wierszu. I odwrotnie, plik jest zapisywany wiersz po wierszu. Rekordy danych w pliku bez typu mogą mieć różną długość.
6+
7+## Tworzenie pliku
8+
9+``` pascal
10+ var
11+ datFile : TextFile; // lub: datFile: text
12+ strName : String;
13+ sinContent : Single;
14+ begin
15+ Assign(datFile, 'example.txt'); // Przypisuje nazwę pliku do zmiennej datFile i otwiera plik
16+ ReWrite(datFile); // Stary plik zostanie nadpisany
17+ strName := 'qwert';
18+ sinContent := 1800.23;
19+ WriteLn(datFile, strName, sinContent); // Zapisuje pierwszy rekord do nowego pliku
20+ ...
21+ end;
22+```
23+
24+W trybie kompilatora OBJPFC lub DELPHI oprócz Assign dostępna jest procedura AssignFile, aby uniknąć pomyłek z TPersistent.Assign.
25+
26+## Otwieranie pliku
27+
28+``` pascal
29+ var
30+ datFile : TextFile;
31+ strName : String;
32+ sinContent : Single;
33+ begin
34+ Assign(datFile, 'example.txt'); // Przypisuje nazwę pliku do zmiennej datFile
35+ Reset(datFile); // Ustawia wskaźnik pliku na początek pliku
36+ ReadLn(datFile, strName, sinContent); // Odczytuje pierwszą linię z pliku
37+ ReadLn(datFile, strName, sinContent); // Odczytuje drugą linię z pliku
38+ ...
39+ end;
40+```
41+
42+## Zamykanie pliku
43+
44+``` pascal
45+ var
46+ datFile : TextFile;
47+ strName : String;
48+ sinContent : Single;
49+ begin
50+ ...
51+ Close(datFile); // zamyka plik
52+ end;
53+```
54+
55+Podobnie jak dla AssignFile / Assign, w trybie kompilatora OBJPFC lub DELPHI dostępna jest także procedura CloseFile.
56+
57+## Dołącz rekord do istniejącego pliku
58+
59+W przypadku plików tekstowych (plików bez typu) rekord danych można dodać na końcu pliku za pomocą polecenia Append.
60+
61+``` pascal
62+ var
63+ datFile : TextFile;
64+ strName : String;
65+ sinContent : Single;
66+ begin
67+ Assign(datFile, 'example.txt'); // Przypisuje nazwę pliku do zmiennej datFile
68+ Append(datFile); // Otwiera plik z dostępem do zapisu i dodaje rekordy na końcu pliku
69+ strName := 'sdf' ;
70+ sinContent : = 2001.21 ;
71+ WriteLn(datFile, strName, sinContent); // Zapisuje kolejny rekord do nowego pliku
72+ Close(datFile); // Zamyka plik
73+```
74+
75+## Odczytanie całego pliku
76+
77+``` pascal
78+ var
79+ datFile : TextFile;
80+ strName : String;
81+ sinContent : Single;
82+ begin
83+ Assign(datFile, 'example.txt');
84+ Reset(datFile);
85+
86+ while not eof(datFile) // Wykonuj w pętli, dopóki dane można jeszcze odczytać
87+ do begin
88+ read(datFile, strName, sinContent); // Odczytuje zawartość pliku
89+ end;
90+
91+ Close(datFile);
92+ end;
93+```
94+
95+## Zobacz także
96+
97+- [[File types/pl|Typy plików]]
98+
99+---
100+*From the Free Pascal wiki, page "untyped files/pl", as it stood on 2022-01-29 after a change by Trev, 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