Správa ASCII (textových) súborov z Delphi kódu

Jednoducho povedané, textové súbory obsahujú čitateľné súbory ASCII znaky. Môžeme si myslieť, že práca s textovým súborom v Delphi je analogická s informáciami o prehrávaní alebo zaznamenávaní na pásku VCR.

Aj keď je možné vykonať zmeny v textovom súbore, pri spracovávaní informácií preskočte alebo do súboru pridajte iné údaje ako na konci je vhodné použiť textový súbor iba vtedy, keď vieme, že pracujeme s bežným textom a takéto operácie nie sú nevyhnutné.

Textové súbory predstavujú postupnosť znakov formátovaných do riadkov, pričom každý riadok je zakončený značkou konca riadku (a Kombinácia CR / LF).

Textový súbor a metóda priraďovania

Ak chcete začať pracovať s textovými súbormi, musíte prepojiť súbor na disku s premennou súboru v kóde - deklarovať premenná typu TextFile a pomocou postupu AssignFile priradíte súbor na disku k súboru variabilné.

Čítanie informácií z textového súboru

Ak chceme prečítať obsah súboru do zoznamu reťazcov, úlohu vykoná iba jeden riadok kódu.

Aby sme mohli čítať informácie zo súboru riadok po riadku, musíme súbor otvoriť

instagram viewer
vstup pomocou Reset Postup. Po obnovení súboru môžeme použiť ReadLn čítať informácie zo súboru (prečíta jeden riadok textu zo súboru a potom prejde na ďalší riadok):

Po pridaní jedného riadku textu zo súboru do komponentu memo je potrebné SomeTxtFile uzavrieť. Robí sa to prostredníctvom internetu Zavrieť kľúčových slov.

Na čítanie informácií zo súboru môžeme použiť aj postup Čítať. Čítanie funguje rovnako ako ReadLn, okrem toho, že nepresúva ukazovateľ na ďalší riadok.

EOF - koniec súboru

Pomocou funkcie EOF sa uistite, že sa nesnažíte prečítať koniec súboru. Povedzme, že chceme zobraziť obsah súboru v rámčekoch správ - po jednom riadku, kým sa nedostaneme na koniec súboru:

Poznámka: Je lepšie používať Zatiaľ čo slučka ako slučka Until, aby sa zohľadnila (nepravdepodobná) možnosť, že súbor existuje, ale neobsahuje žiadne údaje.

Zápis textu do súboru

writeln je pravdepodobne najbežnejším spôsobom odoslania jednotlivých informácií do súboru. Nasledujúci kód prečíta text z komponentu Memo1 (riadok po riadku) a odošle ho do nejakého novo vytvoreného textového súboru.

V závislosti od stavu súboru poskytnutého na postup prepísania vytvorí nový súbor (otvorí súbor pre výstup) s názvom priradeným SomeTextFile. Ak už súbor s rovnakým názvom existuje, odstráni sa a namiesto neho sa vytvorí nový prázdny súbor. Ak je SomeTextFile už otvorený, najprv sa uzavrie a potom sa znova vytvorí. Aktuálna pozícia súboru je nastavená na začiatok prázdneho súboru.

Poznámka: Memo1.Lines. SaveToFile ('c: \ MyTextFile.txt') urobí to isté.

Niekedy stačí pridať niektoré textové údaje na koniec existujúceho súboru. Ak je to tak, zavoláme pripojiť aby sa zabezpečilo, že sa súbor otvára prístupom iba na čítanie, pričom ukazovateľ súboru je umiestnený na konci súboru. Niečo ako:

Dajte si pozor na výnimky

Vo všeobecnosti by ste ich mali vždy používať spracovanie výnimiek pri práci so súbormi. I / O je plný prekvapení. Vždy používajte CloseFile v konečnom bloku, aby ste predišli možnosti poškodenia FAT používateľa. Všetky predchádzajúce príklady by sa mali prepísať takto:

Manipulácia so štruktúrovanými súbormi

Delphi má schopnosť spracovávať súbory ASCII aj súbory, ktoré obsahujú binárne údaje. Tu sú techniky pre prácu s zadané a nezadané (binárne) súbory.