Procedură de citire
Procedura de citire citește date dintr-un fișier binar sau text. Nu este o procedură reală.
Pentru a citi un fișier binar tastat O variabilă trebuie să fie de același tip ca tipul de fișier de bază. Delphi citește o intrare din fișier în variabilă și mută poziția fișierului, pregătindu-se să citească următoarea înregistrare. Dacă fișierul nu este codat, Delphi citește câțiva octeți ca dimensiunea înregistrării când fișierul a fost deschis prin procedura Resetare. Puteți să listați mai multe variabile în argumentele Read, caz în care Read citește mai multe intrări și atribuie valoarea fiecăruia unei variabile separate.
Când citiți un fișier text, Citire efectuează citirea formatată. Delphi citește caractere dintr-un fișier text și le interpretează în funcție de tipul fiecărei variabile. Când citiți valorile numerice, Citire trece prin spații goale, file și linii), citește un număr și oprește citirea când se recepționează următorul caracter gol.
Când citiți șiruri de caractere și caractere, Citiți nu va sări peste caractere goale. Dacă Variabila este un șir lung, Read citește un întreg șir în variabila, dar nu are caractere de sfârșit de linie. Dacă variabila este un șir scurt, Citi se oprește la sfârșitul liniei sau în funcție de mărimea șirului, oricare dintre ele survine mai întâi.
- Dacă fișierului nu i se atribuie un nume prin procedura Assign File sau Assign. Citirea generează o eroare I / O 102.
- Dacă fișierul nu este deschis pentru citire, Citire returnează o eroare I / O 103.
- Dacă datele de intrare nu sunt formatate corect (de exemplu, încercând să citească 3.14 într-o variabilă întreg), citirea produce o eroare I / O 106.
- Dacă procedura de citire a eșuat dintr-un motiv diferit (de exemplu, o eroare de rețea), Citire emite un cod de eroare al Windows ca o eroare I / O.
- Dacă valoarea de intrare este în afara domeniului tipului (presupunând 257 când citiți Byte), citirea convertește valoarea la tipul corect fără a declanșa o excepție sau emite o eroare de rulare.
Sfaturi și trucuri
- Delphi nu stochează intrări dintr-un fișier binar; Pentru a citi mai multe înregistrări la un moment dat, puteți folosi procedura BlockRead.
- Citirea după sfârșitul unui fișier binar cauzează o eroare I / O de 100. Într-un fișier text, Citire reușește să citească întotdeauna prin extragerea caracterului # 26. Atunci când citiți un număr sau un șir, în acest caz, se obține zero sau un șir gol.
- Dacă primul argument este un fișier - nu este specificat, Read citește datele din fișierul text Input.