Razširitev besedilne datoteke: vrste in osnovni vidiki opredelitve pripadnosti programom. Besedilna datoteka Kateri program ima razširitev txt

Besedilna datoteka- računalniška datoteka, ki vsebuje besedilne podatke. Besedilne datoteke so v nasprotju z binarnimi (binarnimi) datotekami, ki vsebujejo podatke, ki niso namenjeni interpretaciji kot besedilo (na primer datoteke, ki shranjujejo besedilo v kodirani ali stisnjeni obliki ali shranjujejo zvok, sliko ali druge podatke namesto besedila) .

Prednosti in slabosti

Prednosti:

  • Vsestranskost - besedilno datoteko je mogoče brati (tako ali drugače) v katerem koli sistemu ali operacijskem sistemu, zlasti ko gre za enobajtno kodiranje, kot je ASCII, za katerega ne veljajo težave, značilne za druge oblike datotek - ne zanima jih razlika v vrstnem redu bajtov ali dolžini stroja na različnih platformah.
  • Stabilnost - vsaka beseda in znak v taki datoteki sta samozadostni in če je v takšni datoteki poškodovan bajt, lahko običajno obnovite podatke ali nadaljujete z obdelavo preostale vsebine, medtem ko ste v stisnjenih ali binarnih datotekah, poškodovanje več bajtov lahko naredi datoteko popolnoma nepopravljivo. Številni sistemi za nadzor različic so zasnovani za besedilne datoteke in lahko delujejo le z binarnimi datotekami kot celoto.
  • Oblika besedilno datoteko je izredno preprost in ga je mogoče spremeniti z urejevalnikom besedil - programom, ki je na voljo s skoraj vsakim OS.

Slabosti:

  • Velike nestisnjene besedilne datoteke imajo nizko entropijo informacij - te datoteke zavzamejo več prostora od minimalnega zahtevanega. Čeprav ta odveč določa povečano odpornost na okvare v kanalih za prenos podatkov in pri prejemanju podatkov iz medijev, na primer z magnetnega traku.
  • Nekatere operacije z besedilnimi datotekami so neučinkovite. Na primer, če se v datoteki pojavi številka, jo bo moral računalniški sistem, preden začne z njo, z uporabo relativno zapletenega postopka pretvorbe števil pretvoriti v svojo notranjo obliko; če želite iti na 1000. vrstico, morate pred njo prešteti 999 vrstic; težko je zamenjati eno vrstico z drugo itd. Zato se besedilne datoteke pri delu z velikimi količinami podatkov uporabljajo le kot vmesni format, ki zagotavlja interoperabilnost.

Oblike, ki temeljijo na besedilnih datotekah

Besedilne datoteke se zaradi svoje preprostosti pogosto uporabljajo za shranjevanje podatkov o storitvah (na primer dnevnikov): ker dodajanje novih podatkov na konec besedilne datoteke ne zahteva znatnih računalniških virov, ne glede na velikost obstoječe datoteke in vrsta dodanih besedilnih podatkov, vzdrževanje datotek dnevnika besedila se običajno zgodi učinkovito in nevidno za uporabnika in za druge aplikacije (do izčrpanosti prostora na disku).

Besedilni format je osnova za številne bolj specializirane formate (npr. .Ini, SGML, HTML, XML, TeX, izvorna koda programskega jezika). V nekaterih od teh formatov se lahko določene kombinacije znakov uporabijo kot sredstvo za označevanje besedila. V tem primeru lahko datoteka shrani oblikovano besedilo, v katerem je mogoče za znake (na primer format obogatenega besedila, HTML) dodatno določiti pisavo, slog, velikost itd.

Razširitve imena datotek

DOS in Windows običajno uporabljata razširitev .txt za datoteke z navadnim besedilom. Datoteke s katero koli drugo razširitvijo ali brez nje so lahko besedilne datoteke. Na primer, izvorne kode programov so običajno shranjene v datotekah s končnicami, ki ustrezajo programskemu jeziku, v katerem so programi napisani (.bas, .pas, .c).

Oblikovano besedilo (besedilo z oznakami) je običajno shranjeno v datotekah s končnico, ki ustreza obliki zapisa ali označevalnem jeziku - .rtf, .htm, .html.

Kodiranja

8-bitno besedilo

V preteklosti je bil 7-bitni nabor znakov ASCII uporabljen za kodiranje besedilnih datotek, pa tudi 8-bitni EBCDIC in različne razširitve ASCII. Na 8-bitnih kodnih straneh je običajno, da se v prvi polovici kodne tabele uporabljajo znaki ASCII.

Prednost 8-bitne predstavitve besedila je programska preprostost in neodvisnost od problema urejanja bajtov ali dolžine besed na različnih platformah. Pomanjkljivost je veliko različnih standardov, ki lahko privedejo do nezdružljivosti.). Včasih poseben marker (U + FEFF

To nedoslednost narekujejo načela delovanja pisalnih strojev: če se želite premakniti na novo vrstico, morate voziček vrniti na začetek vrstice ( vračilo kočije), nato pa boben obrnite za eno vrstico ( linijski vir). Pri tiskanju na tiskalniku sta lahko en in drugi znak ločena (na primer za izbiro vrstice tako, da jo dvakrat vnesete, ali za premikanje bobna za nekaj vrstic), vendar besedilne datoteke niso potrebne.

Poleg teh besedilne datoteke vsebujejo simbole, kot so tabeliranje (koda 9) in prevod strani (koda 0xC). Slednjega so uporabljali stari urejevalniki besedil, kot je LEXICON, pa tudi datoteke, namenjene tiskanju na tiskalniku.

mapa(Angleška datoteka - vezivo) - koncept v računalništvu: entiteta, ki vam omogoča dostop do vira računalniški sistem in ima številne lastnosti:

  • fiksno ime (zaporedje znakov, številka ali kaj drugega, kar edinstveno označuje datoteko);
  • določeno logično predstavitev in ustrezne operacije branja / pisanja.

Lahko je karkoli - od zaporedja bitov (čeprav ga beremo po bajtih, bolje rečeno besednih skupin bajtov, po štiri, osem, šestnajst) do baze podatkov s poljubno organizacijo ali katero koli vmesno možnostjo; večdimenzionalna baza podatkov, strogo urejena.

Prvi primer ustreza operacijam branja / pisanja toka in / ali matrike (to je zaporedno ali z dostopom po indeksu), drugi - ukazom DBMS. Vmesne možnosti so branje in razčlenjevanje vseh vrst datotek.

(Iz Wikipedije, proste enciklopedije)

Bog, kakšna neumnost (© olivur77).

Razumete kaj? Jaz ne. Definicija v Wikipediji je seveda najverjetneje pravilna, vendar ne daje razumevanja preprostim smrtnikom (kot sem jaz).

Kaj je datoteka? Pojasnilo v običajnem jeziku.

Naj še enkrat razložim s primeri, kaj je datoteka, in da je akademska razlaga, zlasti prevod iz angleščine, dolgočasna.

Ste se kdaj vprašali, zakaj s klikom na "na majhno fotografijo" () odprete program (tudi datoteko, včasih pa tudi več datotek) za ogled fotografij? Ko se kliknemo na bližnjico do filma (), se zažene program za ogled filma? Ko kliknemo bližnjico (mimogrede, tudi datoteko) za brezplačno komunikacijo (na primer), se odpre program, s katerim brezplačno komuniciramo s prijatelji in sorodniki in se celo vidimo?

Zakaj se to zgodi? Če mislite, da je operacijski sistem Windows tako pameten, se močno motite.

Želim razbiti mit o "pametnosti" operacijski sistem Windows in vas seznanijo s koncepti, kot so "Datoteka", "razširitev", "format".

Besede so na prvi pogled strašljive in nerazumljive, v resnici pa je vse precej preprosto in v to se bomo kmalu prepričali.

Naredimo eno nastavitev (kot je prikazano na spodnji sliki), ki nam bo pomagala razumeti te koncepte.

Kliknite gumb "Start", izberite "Nadzorna plošča" (če želite izvedeti več o tem, kaj je, pojdite skozi). Če vaš pogled na "Nadzorno ploščo" ni enak kot na sliki (ampak najverjetneje "pogled po kategorijah", saj je ta pogled privzeto nastavljen), kliknite z levo tipko miške na napis "Preklopi v klasični pogled" ".

Nato z levim gumbom miške dvakrat kliknite na ikono "Možnosti mape" - videli boste nastavitve lastnosti mape. Privzeto boste preusmerjeni na zavihek "Splošno". Z levo tipko miške kliknite zavihek "Pogled".

Počistite polje zraven »Skrij razširitve za registrirane vrste datotek«, tako da ga kliknete z levim gumbom miške. Če tega napisa ne vidite, uporabite desni drsnik (drsnik) in se "pomaknite" do konca menija (premaknite kazalec miške nad drsnik, pritisnite levi gumb miške in držite gumb, povlecite drsnik navzdol ).

Kako ustvarim datoteko? Na primer txt.

Začnimo s preprostim primerom. Ustvarimo navaden besedilni dokument (datoteko) na namizju. To bomo storili na naslednji način.

Kazalec miške (kazalec) postavite na območje namizja, kjer ni bližnjic. Z desno miškino tipko kliknite, levo kliknite »Novo«-»Besedilni dokument«.

Na namizju bi se morala prikazati bližnjica s podobo "zvezka z ohlapnimi listi na vzmetih, kot bi bila z besedilom" pod imenom "Besedilo document.txt".

Računalniško gledano smo ustvarili besedilno datoteko. Upoštevajte, da je poleg besed, ki jih razumemo, v imenu datoteke pika in tri nerazumljive angleške (latinske) črke. Čemu vse to služi in čemu služi? Gremo po vrsti.

Besedilo document.txt Je dejansko ime same datoteke, ki jo sestavljajo:

    1. Ime

V tem primeru je ime datoteke besedilni dokument (načeloma je ime datoteke lahko karkoli, sestavljeno iz ene ali več besed, lahko vključuje posebne znake, na primer podčrtaj, črtica ali presledek. V našem primeru je datoteka ime je sestavljeno iz 2 besed in enega posebnega znaka (kar je nenavadno) - presledek, to je, če je za nas to razumljiva kombinacija besed Besedilo dokument, potem bo računalnik to ime dojemal kot dokument prostora za besedilo (To je za referenco , to nima nobene zveze z našo temo. Lahko se le srečate v prihodnosti, da vas ne bo presenetilo).

    1. Ločevalnik

Točka (.) Je znak, ki ločuje ime datoteke in pripono datoteke. Zakaj ravno bistvo? Zgodovinsko gledano od konca stoletja. Tako so se odločili že davno, ko so se programi šele rojevali. Ja, na splošno in lepo - nič odvečnega in ne boli oči.

    1. Razširitve

Sama beseda razširitev se mi zdi lažje razumljiva. Tu je ime datoteke, vzeli so jo in jo razširili z nekaj črkami, ime datoteke pa je postalo širše (no ali dlje). V našem primeru ima razširitev obliko txt... To je txt in pove operacijskemu sistemu (Windows), kateri program naj odpre to datoteko, da bomo lahko videli (prebrali), kaj je zapisano v tej datoteki (v tem primeru besedilno datoteko), ali pa tam kaj napisali. Pravijo tudi, da je ta datoteka v besedilni obliki (več o oblikah kasneje).

Če je do sedaj jasno, kaj je razširitev datoteke, potem bom dal formulacijo za odrasle: Razširitev datoteke operacijskemu sistemu označuje njeno obliko, v našem primeru je datoteka v obliki txt.

Dolgo sem razmišljal, ali bi v okviru te teme naredil ekskurzijo v zgodovino ali ne, vendar sem se kljub temu odločil za pisanje, saj boste v tem izletu našli še več odgovorov na vprašanja "zakaj ...".

Nekoč, ko računalniki so bili veliki in šibki, ni bilo tiste čudovite večbarvne grafike, ki jo vidite zdaj na monitorju računalnika, v Sovjetski zvezi pa je bilo običajno računalnike imenovati računalniki (elektronski računalniki ali osebni računalniki, kjer je "P" pomenilo osebno), ampak so bili programerji matematiki. Takrat je bilo na zaslonu monitorja mogoče videti le belo ali zeleno besedilo na črnem ozadju. Računalniki so bili takrat 8-bitni (ne obremenjujte se zdaj s tem, verjemite). Za vsak podatek se je takrat boril. Razviti so bili različni standardi.

Tako je bila v tem obdobju sprejeta ena od odločitev, da bo ime datoteke ime oblike / ločilo / razširitev.

Tudi zaradi pomanjkanja virov je bilo pod imenom datoteke dodeljenih 8 znakov (recimo, največ 8 znakov, torej manj je mogoče, več kot 8 pa nemogoče), naredite piko kot ločilo in samo 3 za razširitveni znak (črka).

Čas je minil. Napredek ni miroval. Računalniki so postali majhni in zmogljivi z lepimi, lepimi barvnimi grafikami, ki navdušujejo naše oči. Bitna globina osebni računalniki se je povečalo za 8 -krat. In zdaj imate pred seboj 32-bitni ali 64-bitni računalnik z 32-bitnim ali 64-bitnim operacijskim sistemom (najverjetneje Windows).

Ko so računalniki postali močnejši, je omejitev dolžine imena datoteke postala manj kritična. Danes je nekje do 256 znakov.

Torej to je to. Ker je po vsem svetu milijard imen datotek in ta imena so lahko katera koli, potem je teh 256 znakov dovolj za oči. Bolj zanimivo z razširitvami. Pravzaprav ni toliko formatov datotek (relativno relativno) in še vedno so na splošno dovolj 3 znaki. Zdaj so v razširitvi datoteke 4 znaki (več jih je), vendar je to bolj kontinuiteta. Na primer datoteka, ki jo je ustvaril urejevalnik Wordov test iz Microsoftov paket Office 2003 ima razširitev .doc in datoteko, ki jo je ustvaril Wordov testni urejevalnik iz paketa Microsoft Office 2007 (novejša različica tega paketa) ima razširitev .docx.

Še ena zanimivost. Takoj, ko so računalniki dosegli svoj razvoj, ko se je na monitorjih začela pojavljati grafika in ne le besedilo, so se pojavile bližnjice (Ja, pravzaprav manipulator miške. Miške sovjetske izdelave so imele precej velika številka, zato so jih zaničevalno imenovali podgane). Torej majhne slike na etiketah (v našem primeru je to podoba "zvezka z ohlapnimi listi na vzmetih, kot bi bilo z besedilom") - to so tudi pogosto ločene datoteke, v tistem času so v bistvu imeli razširitev .ico okrajšava na 3 znake angleške besede icon, ki v angleški jezik pomeni ikono, simbol, ikonično sliko. Od takrat se te majhne slike imenujejo ikone. Druga imena teh majhnih slik so piktogram, ikona.

Torej, nazaj k našim ovnom, to je k datoteki "Text document.txt" na namizju.

Dvakrat hitro kliknemo levi gumb miške na bližnjico datoteke »Text document.txt«, ki smo jo ustvarili. Hm. (Ampak zanimivo, ali vam uspe dvakrat hitro klikniti nanjo, da odprete datoteko? Poleg tega trenutno ne morete premakniti miške, ker če miško premikamo med kliki, ta odprtina ne bo delovala. In se ni naučil kako dvakrat zaporedoma hitro kliknem levo tipko miške. Verjetno so moje ukrivljene roke najverjetneje nabrušene za kladivo. Zato uporabljam staro "staromodno" metodo, ki mi prihrani živčne celice.) Jaz pa odpiranje datotek drugače. Z desno miškino tipko kliknem bližnjico, v meniju izberem zgornji element menija »Odpri« in levi klik nanj. (Miško uporabljamo zelo pogosto. Če ne veste, ali z njo ne delate dobro, lahko preberete dve lekciji o in o tem)

Kaj vidimo? Vidimo prazno datoteko, ki jo odpre program "Beležnica" (prazna, ker tam še nismo nič napisali - to ne bo trajalo dolgo, napisali bomo več).

Mimogrede, zapišimo. Kot len ​​človek v svojem življenju samo tipkam na tipkovnici. Še več, kadar je to mogoče in tega ne storiti. To besedilo bom od nekod samo skopirala. Da bi bilo besedilo smiselno in uporabno v življenju, bom recept za svoje najljubše palačinke prepisal tukaj. Tako tanki so, da se celo vidijo.

Naj naš besedilni dokument ostane na namizju. Odšli bomo v internet na spletnem mestu brezplačnega simulatorja tipkovnice na strani http://stamina.ru/blog/pitanie/blini in od tam kopirali del recepta, kot sledi.

Kazalec miške premaknemo na začetek besedila, ki ga želimo izbrati, bolje rečeno levo v levo, pritisnemo levi gumb miške in s pritiskom na gumb miške »premaknemo« kazalec miške do konca del besedila, ki ga potrebujemo. Če smo z izbranim področjem besedila zadovoljni, spustimo levi gumb miške in takoj kliknemo desni gumb miške (slika opisuje drugo različico istega dejanja). Prikazal se bo meni, v katerem premaknemo kazalec miške na element menija "Kopiraj" in kliknemo levi gumb miške.

No, vzemimo kakšen referenčni disk. Na primer, vaš računalnik ima 10 GB (gigabajtni) pogon "G:". Ali če je 10.000.000.000 bajtov v bajtih (dejansko malo več, vendar za nas to zdaj ni pomembno).

Preprosto je izračunati, da se datoteke, kot je naš "Pancake recept.txt", prilegajo temu disku: 10 GB razdelimo na 507 bajtov in dobimo približno 19.723.866 datotek (pravzaprav malo manj, vendar za nas to tudi ni pomembno zdaj) ...

V grobem gledano, na našem disku velikosti 10 GB lahko namestimo 20 milijonov datotek, na primer naš recept za palačinke.txt.

Na tem želim zaključiti 1. del članka, v katerem smo na primeru preproste besedilne datoteke začeli razmišljati o pomenu pojmov, kot so "datoteka", "format", "razširitev". V tem članku bomo te koncepte obravnavali že na "težjih" oblikah datotek, kot so slikovne datoteke, glasbene in video datoteke, in še veliko več, kar to spremlja.

To je vse. Vso srečo in ustvarjalni uspeh vsem. 🙂

P.S. Preberite tudi drugi del članka, o in tretji - o.

Skoraj vsak dan naletimo na besedilne datoteke (dokumente). V tem primeru pa ne smemo zamenjevati razširitve besedilne datoteke in oblike besedilnih podatkov, to sta dve različni stvari. Poskusimo ugotoviti, katere datoteke te vrste so in kaj so.

Razširitev besedilne datoteke: kaj je to?

Začnimo z dejstvom, da ima praviloma večina datotek te vrste po ločevalniku (piko) tričrkovno razširitev. Najenostavnejša in najpogostejša vrsta so datoteke s pripono .txt, odprte v istem Windows sistemi z uporabo standardnega "Beležnice".

Kljub splošno sprejetim pravilom lahko razširitve datotek besedilnih dokumentov ne vsebujejo treh črk, ampak več (njihovo število je lahko do dvanajst, vendar ne več), na primer datotek e-knjig.djvu. Poleg tega so v razširitvi lahko prisotne številke.

Kaj nam daje v mislih razvrstitev besedilne datoteke (dokumenta) v smislu njihove identifikacije? In dejstvo, da vam en pogled omogoča takojšnje reševanje pomembnega vprašanja: kakšno razširitev imajo besedilne datoteke, tak program je z njimi povezan za odpiranje ali urejanje. V mnogih primerih lahko skoraj vedno prepoznate prvotno aplikacijo, v kateri je bila ustvarjena takšna datoteka.

Vendar ne pozabite, da danes lahko najdete precej veliko datotek z enakimi razširitvami, vendar ustvarjenih v drugih aplikacijah ali povezanih z različnimi programi. Zdi se, da se navadna datoteka s pripono .doc (.docx) sprva ujema urejevalnik besedil Microsoft Word... Lahko pa ga odprete ali shranite v tej obliki v drugem, tudi na "jabolčnih" računalnikih. To lahko vključuje tudi tako imenovane datoteke .pdf mešanega tipa, ki vsebujejo ne le besedilo, ampak tudi grafiko. Konec koncev Wordovi dokumenti lahko vsebuje vstavljene slike.

Prav to služi kot pokazatelj, da razširitev besedilne datoteke kaže na vsestranskost same oblike, ki je najbolj "berljiva" tudi ne glede na uporabljeni operacijski sistem. Enako velja za katero koli vrsto.

Vrste razširitev datotek: besedilo

Na splošno je danes znano tako veliko število besedilnih oblik in njihovih razširitev, da se verjetno skoraj noben specialist ne bo lotil njihovega celotnega štetja.

Ja, seveda je univerzalnost takih dokumentov nedvomna, še posebej, če uporabljajo najpreprostejše.Včasih pa je težava lahko v tem, da določeno sistem ali program ne podpira vsakega kodiranja. Zato se namesto običajnih črk na zaslonu prikaže niz simbolov.

Kar zadeva vrste besedilnih datotek, jih ne morete našteti vseh. Najpogostejši so .txt, .doc, .tex, .text, .pdf, .log, .apt, .ttf, .err, .sub, .djvu, .odt, .rtf in mnogi drugi. Seznam je neskončen.

Najbolj zanimivo je, da imajo številne te vrste datotek različne vloge v sistemu. Na primer, poleg običajne datoteke s podnapisi .sub je lahko običajen besedilni dokument .txt odgovoren za njihov ogled pri odpiranju videoposnetka, v zvezi s tem pa je veliko formatov zamenljivih.

Upoštevajte, da imajo lahko tudi izvršljive datoteke besedilo kot vsebino. Najpreprostejši primer- datoteka .bat, ustvarjena v običajnem "Beležnici" in vsebuje besedilo v obliki niza ukazov. Ob zagonu se ukazi izvedejo in meni "Odpri z ..." se uporablja za urejanje, razen če je ta proces sprva povezan z drugim dejanjem.

Podobno situacijo opažamo pri dokumentih, ki uporabljajo označevalne ali programske jezike, na primer datoteke .html, .htm, .xml itd. Tudi spletne strani se lahko v številnih urejevalnikih odprejo kot izvorne datoteke, ki vsebujejo elemente drugih proizvajalcev.

Spreminjanje razširitev besedilnih datotek

Kar zadeva spreminjanje razširitve, jo včasih lahko spremenimo, na primer .txt v .doc in obratno. Urejevalnik besedil odpre vse vrste. Enako velja za par .txt - .bat, ko ga odprete v Beležnici. Toda v drugih primerih je bolje, da takšnih manipulacij ne izvajate, preprosto ne bo privedlo do ničesar, druga aplikacija pa ne bo mogla odpreti preimenovane datoteke. Za spremembo oblike je treba uporabiti posebne programe za pretvorbo.

Namesto pogovora

Kot je že jasno, ima lahko razširitev besedilne datoteke veliko različic, odvisno od programa, v katerem je bil dokument ustvarjen. Toda tako kot v drugih primerih je s samo razširitvijo skoraj vedno mogoče določiti aplikacijo, ki je bila prvotno povezana z njo, v skrajnih primerih pa jo odprite s katerim koli drugim programom, ki podpira delo s to vrsto podatkov, tudi če je izvirnik v računalniku ni aplikacije. In kot je verjetno že jasno, so prav besedilne datoteke dejansko najbolj razširjene in univerzalne v računalniškem svetu, ne glede na uporabljene programske pakete in operacijske sisteme.

TEMA №10:DATOTEKE. TIPIČNE DATOTEKE. BESEDILNE DATOTEKE.

Osnovni pojmi

Datoteke Je imenovana struktura podatkov na tehničnem mediju, ki je zaporedje elementov (zapisov) iste vrste.

Datoteke Je niz s spremenljivo dolžino neomejene velikosti.

Datoteka je lahko del druge zapletene strukture, vendar ne sme biti del druge datoteke.

Razlika med datoteko in nizom:

A) umestitev na zunanji medij;

B) dolžina datoteke ni določena;

C) mesto elementa ne določa indeks.

Za označbo datoteke in delo z njo uporabite spremenljivka datoteke(FP).

Spremenljivka datoteke je spremenljivka, ki se uporablja v programih za sklicevanje na datoteko in sklicevanje nanjo.


Značilnosti spremenljivke datoteke:

Ni mu mogoče dodeliti nobenih vrednosti.

Ne more sodelovati v logičnih operacijah

Ne more vnesti matematičnih izrazov

Izjava spremenljivke datoteke

Datoteka je deklarirana v razdelku deklaracije spremenljivke z navedbo vrste elementa datoteke.

Vrsta datoteke

Opis datoteke

Vtipkano

Var F1: datoteka celega števila;

F2: datoteka char;

Ni tipkano

Besedilo

DELO Z DATOTEKO

A) NAPIŠI V DATOTEKO

Dodeli (FP, ‘Ime’);

Odpiranje datoteke za pisanje

Pisanje podatkov v datoteko

Pisanje (FP, Podatki);

Writeln (FP, Podatki); - za besedilo

Zaprite datoteko

B) BRANJE IZ DATOTEKE

Datoteko (morda ne obstaja) povežemo z imenom Ime s spremenljivko datoteke (FP)

Dodeli (FP, ‘Ime’);

Odprite datoteko za branje (kazalec je nastavljen na prvi element)

Podatke iz datoteke beremo v spremenljivke in kazalec datoteke premaknemo naprej.

Preberi (FP, spremenljivke);

Readln (FP, spremenljivke); - za besedilo

Zaprite datoteko

Pri delu z datoteko se uporablja pojem kazalec datoteke ali indeks, to je položaj magnetne glave na določenem mestu v datoteki.

DOLOČANJE DOLŽINE BESEDILNIH DATOTEK

V Pascalu ni ukaza, ki bi določil število vrstic, zapisanih v besedilno datoteko. Vendar pa obstaja funkcija, ki vam pove trenutek, ko je kazalec datoteke prišel do zadnje vrstice - EOF (konec datoteke)

EOF(FP) - potrditev funkcije

do konca besedilne datoteke

Če pride do konca datoteke, potem je EOF res.

Če konec datoteke ni dosežen, je EOF napačen.

Primer branja besedilne datoteke, ki vsebuje neznano število vrstic. Na koncu programa bomo na zaslonu prikazali število vrstic.

Var f: besedilo; N: celo število; s: niz;

Dodeli (f, ‘c: \ MyText. Txt’);

Medtem Eof (f) = napačno naredi ( to vrstico lahko napišete krajše: Medtem ne Eof (f) naredi}

Writeln ("V datoteki c: \ MyText. Txt", N, "vrstice");

DOLOČANJE DOLŽINE BINARNE DATOTEKE

Za binarne datoteke velja metoda, ki se uporablja pri branju besedilnih datotek. Funkcija EOF deluje enako za besedilne in binarne datoteke.

Poleg tega lahko pri delu z binarnimi datotekami uporabite funkcijo FileSize, ki določa dolžino binarne datoteke.

Velikost datoteke (FP) - funkcija, ki vrne dolžino binarne datoteke

Program, ki bere vsa števila iz binarne celoštevilčne datoteke in najde njihovo vsoto:

Var f: datoteka celega števila;

Summ, i, T: celo število;

Dodeli (f, ‘c: \ MyFile. Int’);

Za i: = 1 do velikosti datoteke (f) naredi ( lahko uporabite drugo zanko: Medtem ne Eof (f) naredi}

Writeln ("Vsota številk v datoteki c: \ MyFile. Int is", Summ);

Writeln ("Dolžina datoteke c: \ MyFile. Int", FileSize (f), "številke");

BINARNA NAVIGACIJA

Za binarne datoteke obstaja postopek iskanja, ki premakne kazalec za branje / pisanje na želeno mesto datoteke.

IŠČI (FP, položaj) - premakne kazalec

na določeno mesto datoteke

Program, ki izbriše ničlo na določenem mestu v dvojični realni datoteki in to številko pripne na konec datoteke.

Var f: datoteka real; (razglasite spremenljivko datoteke za pravo datoteko)

N: = velikost datoteke (f); (določimo število številk v datoteki)

Ponovi (začetek cikla)

Writeln ("V datoteki", N, "številke") ");

Writeln ("Vnesite številko številke, ki jo želite premakniti na konec datoteke?");

Do (Poz> = 0) in (Poz<=N) {выход из цикла, только если в данном файле такая позиция существует}

Išči (f, Poz); (postavite kazalec datoteke na dano mesto)

Preberite (f, R); (preberemo številko iz danega položaja datoteke v spremenljivko R, kazalec se premakne za en položaj naprej)

Išči (f, Poz); (vrnite kazalec v dani položaj)

Pišite (f, nič); (nič vrednost, v kateri je kazalec nastavljen)

Išči (f, N); (premaknite kazalec na konec datoteke)

Zapišite (f, R); (napišite številko od spremenljivke R do konca datoteke)

ZMANJŠANJE BINARNIH DATOTEK

Če želite skrajšati binarno datoteko, morate kazalec datoteke nastaviti na mesto, kjer se nahajajo dodatne informacije, in skrajšati dodatni del s postopkom Odreži.

Odrežite (FP ) postopek za skrajšanje podatkov po kazalcu datoteke

Program, ki v binarni datoteki pusti le prvih 10 številk:

Var f: datoteka real; (razglasite spremenljivko datoteke)

Dodeli (f, ‘c: \ MyRealFile.rlf’); (spremenljivko datoteke povežite z datoteko)

Ponastavi (f); (odprite datoteko za branje in pisanje)

Išči (f, 10); (postavite kazalec datoteke na dano mesto)

Okrnjen (f); (iz datoteke, ki se nahaja dlje od kazalca datoteke, smo odrezali vse)

DODAJANJE INFORMACIJ V TEKSTILNE DATOTEKE

Na žalost pri delu z besedilnimi datotekami ni mogoče vstaviti nobenih podatkov v sredino ali na začetek datoteke. Edina možna sprememba v datoteki je možnost dodajanja vrstic na konec datoteke. V ta namen mora biti datoteka odprta za dodajanje.

Append(FP)- postopek, ki odpre besedilno datoteko

za dodajanje vrstic

Program, ki na konec besedilne datoteke doda dve vrstici:

Var FT: besedilo; s: niz;

Dodeli (FT, 'q. Txt');

S: = 'Prva dodana vrstica'; Zapis (FT, S);

S: = 'Druga dodana vrstica'; Zapis (FT, S);

PREENESENJE, PREMIKANJE DATOTEKE

Pri delu z dajanjem informacij na disk se morate zavedati, da pri prenosu podatkov iz ene mape (v nasprotju s kopiranjem, kjer se ustvari podvojen podatek) v drugo, ni dejanskega prenosa podatkov. Pri prenosu podatkov iz ene mape v drugo se spremeni le pot v datoteki, to je pravzaprav le ime datoteke.

Zato v Pascalu isti ukaz izvede tako preimenovanje datoteke kot prenos datoteke med imenike.

Preimenuj (FP, Novo_ime_datoteke) postopek, ki preimenuje datoteko in jo prenese v imenik,

določeno v novem imenu datoteke.

Ukaz Preimenuj deluje samo z zaprtimi (ali še ne odprtimi) datotekami. Zato pred uporabo datoteke ni treba odpreti za branje, pisanje ali dodajanje podatkov. Ali pa, če je datoteka že odprta, jo je treba najprej zapreti.

Program bi moral dati datoteki »q1.txt« novo ime, ki ga vnese uporabnik, in prenesti datoteko »q2. txt'V imenik'c:\ Dokument\’.

Var FT: besedilo; s: niz;

Dodeli (FT, 'q1.txt'); (spremenljivko datoteke povežite z datoteko)

Writeln ('Vnesite novo ime za datoteko q1.txt');

Branje (-i); (preberite novo ime datoteke s tipkovnice v spremenljivki s)

Preimenuj (FT, s); (preimenuj datoteko)

Dodeli (FT, 'q2.txt'); (spremenljivko datoteke povežite z drugo datoteko)

Preimenuj (FT, ‘c: \ Document \ q2.txt’); (prenesite datoteko v dani imenik z istim imenom)

Če želite datoteko prenesti na drug disk, jo morate kopirati in nato izbrisati na istem mestu

KOPIRANJE IN Brisanje datoteke

Kopiranje: Če želite kopirati datoteko, morate prebrati vse zapise ene datoteke in jih zapisati v novo ustvarjeno datoteko.

Odstranitev:Če želite izbrisati datoteko, je dovolj, da za spremenljivko datoteke (povezano z zaprto datoteko) uporabite postopek brisanja.

IZBRIŠI (FP) postopek, ki odstrani datoteko, povezano s spremenljivko datoteke.

Program kopira datoteko s pogona "C" v datoteko dicDo 'D«In izbriše izvirnik s pogona» C «(pravzaprav program prenese datoteko z enega pogona na drugega)

Var f1, f2: datoteka bajtov;

Dodeli (f1, 'c: \ MyFile. Int'); Ponastavi (f1); (odprite vzorčno datoteko za branje)

Dodeli (f2, ‘d: \ MyFile. Int’); Prepišite (f2); (ustvarite datoteko na pogonu D)

Medtem ne Eof (f1) naredi

Preberite (f1, b); (preberite podatke iz izvirne datoteke)

Zapišite (f2, b); (zapišite podatke v novo datoteko)

Zapri (f1); (zaprite vzorčno datoteko, preden jo izbrišete, jo morate izbrisati)

Zapri (f2); (zaprite novo datoteko)

Izbriši (f1); (izbrišite datoteko)

DELO S KATALOGI

MkDir (Ime imenika) - Postopek ustvarja novo katalog

(Če imenik s tem imenom obstaja, bo prišlo do napake)

RmDir(Ime imenika) - Postopek odstrani katalog

(Izbrišete lahko le prazen imenik)

ChDir (Ime imenika) - Postopek spremeni tok katalog

(Trenutni imenik je imenik, pot do katerega pri delu z datotekami ni potrebna. Ko je program vklopljen, je trenutni imenik imenik, v katerem se nahaja program.)

Za preimenovanje katalog potrebno :

a) Ustvarite nov imenik

b) Vse datoteke premaknite tja

c) Izbrišite stari imenik

Program preimenuje imenik "c: \ Cat \", ki vsebuje dve datoteki "q1.txt" in "q2.ini", v imenik "c: \ CatNew \" in naredi trenutni imenik.

Var f1, f2: datoteka bajtov; b: bajt;

MkDir ("c: \ CatNew"); (ustvarite nov imenik)

(kopirajte datoteko q1.txt v nov voziček)

Dodeli (f1, ‘c: \ Cat \ q1.txt’); Ponastavi (f1);

Dodeli (f2, ‘c: \ CatNew \ q1.txt’); Prepišite (f2);

Medtem ne Eof (f1) naredi

Začeti Preberite (f1, b); Zapišite (f2, b); Konec;

(kopirajte datoteko q2.ini v nov imenik)

Dodeli (f1, 'c: \ Cat \ q2.ini'); Ponastavi (f1);

Dodeli (f2, ‘c: \ CatNew \ q2.ini’); Prepišite (f2);

Medtem ne Eof (f1) naredi

Začeti Preberite (f1, b); Zapišite (f2, b); Konec;

Zapri (f1); Zapri (f2); Izbriši (f1);

RmDir ('c: \ Cat'); (izbrišite stari imenik)

ChDir („c: \ CatNew“); (naj bo nov imenik aktualni)

Poiščite datoteke

Programer ne ve vedno, katere datoteke so v katerih imenikih in katerih imenikih na določenih diskih. Zato je pomembna tema dela z datotekami iskanje datotek (in imenikov).

V modulu sta dva postopka za iskanje datotek WinDos:

Najdi prvega(Maska, zastava, informacijski_sektor)- išče prvo datoteko, ki se ujema z "masko" in "zastavo", če jo najde, prenese podatke o najdeni datoteki (imeniku) na spremenljivko vrste TSearchRec("Prejemnik informacij")

NajtiNaprej (informacije o prejemniku)- išče naslednjo datoteko, ki ustreza pogojem, določenim v postopku FindFirst, če jo najde, prenese podatke o najdeni datoteki (imeniku) v spremenljivko vrste TSearchRec("Prejemnik informacij")

Modul WinDos vsebuje tudi spremenljivko DosNapaka ki ostane enaka nič, dokler iskalni ukazi najdejo datoteko, ki ustreza pogoju iskanja. Če iskalni ukazi niso našli datotek, ki ustrezajo pogoju, potem spremenljivka

Iskalna maska ​​- niz z imenom datoteke ali imenika, ki ga iščete. Poleg običajnih znakov lahko maska ​​vsebuje "*" in "?".

* - pomeni, da je v zahtevani datoteki na tem mestu lahko poljubno število znakov;

? – pomeni, da je lahko v zahtevani datoteki na tem mestu prisoten kateri koli znak.

Primeri mask:

"*.* '- katera koli datoteka s katero koli razširitvijo

"iskanje. *"- datoteka z imenom" quest "in katero koli razširitvijo

"* .txt"- datoteka s katerim koli imenom in s pripono" txt "

"qust? .txt"- datoteka z razširitvijo" txt ", ki vsebuje 5 črk v imenu, od katerih so prve 4" qust ", peti znak pa je poljuben

"qust * .txt"- datoteka z razširitvijo" txt ", katere prve štiri črke so" qust ", število naslednjih črk ni omejeno

"quest. txt'- datoteka z imenom "quest" in razširitvijo "txt"

Iskalna zastavica - niz posebnih konstant, ki jih poveže operater OR.

Namesto konstant lahko uporabite število, ki je enako vsoti številk z ustreznimi konstantami

Zastava

Vrsta datoteke

Številka

faReadOnly

Išči z atributom samo za branje

faHidden

Išči z atributom "Skrita"

faSysFile

Išči z atributom "Sistem"

faVolumeID

Vrnite ID medija

faDirectory

Vrnite podatke o imeniku

faArchive

Iščite z atributom "Arhiv"

faAnyFile

Vključi vse prejšnje zastavice

Primeri zastav:

· faReadOnly ali FaHidden – 3 - išče datoteke, ki imajo atribut "skrita" ali "samo za branje"

· faDirectoty ozFaSysFile - 20 – iščejo se imeniki in datoteke, za katere je nastavljen sistemski atribut

Sprejemnik informacij - spremenljivka vrste TSearchRec, ki bo vseboval podatke o najdeni datoteki

Tip TSearchRec je opisan v modulu WinDos in ne potrebuje predhodnega opisa s strani programerja. Ta vrsta je zapis naslednje oblike:

Vnesite TSearchRec = Zapis

Izpolni: niz bajtov; (Sistemski parameter, ki ga ne uporabljamo)

Attr: bajt; (Parameter, ki vsebuje podatke zastavice datoteke)

Čas: LongInt; (Čas ustvarjanja datoteke)

Velikost: LongInt; (Velikost datoteke v bajtih)

Ime: Polje Char; (Ime datoteke)

Recimo, da imamo spremenljivko SR, ki je tipa TSearchRec. Ko ga uporabite v ukazu FindFirst, bo vseboval podatke o najdeni datoteki (imenik.)

Podatki o imenu datoteke bodo šli v SR. Ime, približno velikost datoteke v SR. Velikost in če želite ugotoviti, ali je datoteka sistemska datoteka, morate združiti vrednost SR. Attr z operatorjem konstante And FaSysFile. Sistemska datoteka, če je rezultat večji od nič.

Primer :

ČE Sr. Attr in FaSysFile> 0 THEN Writeln ("Sistem");

Program išče v imeniku "c: \ Doc" vse datoteke z razširitvijo "txt". Prikaže imena tistih, katerih velikost je več kot 3000 bajtov.

Uporablja Dos, crt, WinDos;

Var SR: TSearchRec; (Opisujemo spremenljivko, v katero bomo shranili podatke o najdenih datotekah)

clrscr; ChDir ("c: \ Doc"); (Spremenite trenutni imenik)

FindFirst ("*. Txt", faAnyFile, SR); (Iščemo prvo datoteko v trenutnem imeniku s pripono "txt" in poljubno množico zastavic, rezultat je v spremenljivki SR)

medtem ko je DosError = 0 do (zanka, ko se datoteke nahajajo)

če SR. Velikost> 3000 (če je velikost datoteke večja od 3000 bajtov)

nato writeln (SR. Ime); (Na zaslonu prikažemo ime najdene datoteke)

Program poišče vse imenike na pogonu v korenskem imeniku pogona C in prikaže seznam imenikov v datoteki "c: \ info. txt'In na zaslonu (Korenski imenik pogona "C" je imenik "c: \").

Uporablja Dos, crt, WinDos;

Var SR: TSearchRec; f: besedilo;

Clrscr; Dodeli (f, "c: \ info. Txt"); Prepišite (f);

ChDir ("c: \"); (Pojdite v korenski imenik)

FindFirst ("*", faDirectory, SR); (Iščemo datoteko brez razširitev, vključno z imeniki)

Medtem DosError=0 naredi(zanka, medtem ko se datoteke nahajajo)

če SR. Attr in faDirectory> 0 potem (če ima datoteka atribut »Imenik«)

Writeln (SR. Ime); (prikaz imena datoteke na zaslonu)

Writeln (f, Sr. Ime); (iznesite ime datoteke v datoteko "c: \ info. txt")

FindNext (SR); (Iščem naslednjo datoteko)

Postopki za delo s spremenljivkami datotek

Postopek

Imenovanje

Komentiraj

Dodeli (f, 'ime')

Vezavo spremenljivke datoteke na določeno datoteko (spremenljivko na ime datoteke). Postavljeno pred prvo uporabo spremenljivke datoteke.

Ime datoteke 'ime' lahko nastavite s spremenljivko niza (S): Dodeli (f, S)

Ponastavi (f)

Odpre obstoječo datoteko in nastavi kazalec na začetek snemanja.

Za vse datoteke

Prepišite (f)

Ustvari novo prazno datoteko, nastavi kazalec na začetek datoteke. Če je datoteka obstajala, se njena vsebina uniči.

Za vse datoteke

Zapri (f)

Zapira se Odpri datoteko

Za vse datoteke

Izbriši (f)

Izbriše prej zaprto datoteko

Za vse datoteke

Preimenuj (f, f1)

Preimenuje datoteko f v datoteko f1. Datoteko f je treba predhodno zapreti

Za vse datoteke

Preberite (f, v1, ... vn)

Zapiši (f, v1, ... vn)

Zapiše vrednosti spremenljivk v1, ... vn v datoteko f

Za tipkane in netipkane datoteke

Readln (f, v1, .. vn)

Bere zapise iz datoteke f v spremenljivke v1, ..vn

Writeln (f, v1, .vn)

Zapiše vrednosti spremenljivk v1, .. vn v datoteko f

ne velja v vnesenih datotekah

Dodati (f)

Odpre datoteko in nastavi kazalec na oznako konca datoteke

Uporablja se za dodajanje zapisov

poišči (f, n)

Nastavi kazalec na zapis n

okrnjen (f)

Odstrani vse zapise za kazalcem in na to mesto zapiše oznako konca datoteke.

Funkcije pri delu s spremenljivkami datotek

Postopek

Imenovanje

Komentiraj

Pridobivanje podatkov o koncu datoteke True, če je kazalec na koncu datoteke, sicer napačno

Logična funkcija.

True, če je kazalec na oznaki na koncu vrstice, sicer False

Logična funkcija. Za besedilo datoteke

N: = velikost datoteke (F);

Določanje števila zapisov v datoteki

N: = filepos (f)

Vrne številko zapisa, na katero kaže kazalec zapisa. Prvi zapis je oštevilčen z 0.

Vzorčni programi

PROBLEM 1: Napišite program,zapisovanje podatkov o avtorju in 20 naključnih števil v besedilno datoteko

naključno določiti; (nastavitev generatorja naključnih števil)

prepisati (f); (odprite datoteko za pisanje)

r: = naključno (10); (ustvarimo naključno število od 1 do 10)

STR (r, s); (pretvorite številko r v niz s)

writeln (f, s); (v datoteko napišite niz s številko)

zapreti (f); (zaprite datoteko)

CILJ 2: Napišite program,branje iz besedilne datoteke podatkov o avtorju in 20 naključnih števil

r, i, c: celo število;

assign (f, "dddddd. txt"); (spremenljivko datoteke povežite z datoteko)

ponastavitev (f); (odprite datoteko za branje)

za i: = 1 do 20 do (vklopite zanko za 20 ponovitev)

readln (f, s); (preberite številko iz datoteke v vrstice)

val (s, r, c); (niz "s" prevedemo v številko "r", v spremenljivki "c" kodo možne napake)

če je c = 0, potem writeln (r); (če ni bilo napake (c = 0), potem na zaslonu prikažemo številko)

zapreti (f); (zaprite datoteko)

CILJ 3: Izračunajte korenine kvadratne enačbe in iznesite rezultate v datoteko.

Var a, b, c, x1, x2, d: realno;

Dodeli (f, 'result.txt); (datoteko povežite s spremenljivko datoteke f)

Prepišite (f); (odprite datoteko za pisanje)

(S tipkovnice preberemo začetne podatke in jih pošljemo v datoteko)

Writeln (f, 'rešitev kvadrata ur-i');

Writeln (f, "a =", a: 6: 3, "b =", b: 6: 3, "c =", c: 6: 3);

(Izračunajte korenine kvadratne enačbe)

Če je d> = 0, potem začnite X1: = - b + sqrt (d) / (2 * a); X2: = - b -sqrt (d) / (2 * a); Konec;

(Izpis rezultata v datoteko)

Če d<0 then writeln(f,’у урав-я нет корней’)

else writeln (f, 'korenine: x1 =', x1: 6: 3, 'x2 =', x2: 6: 3);

(Zaprite datoteko in končajte program)

Writeln ('rezultati dela programa v datoteki result.txt');

Disk vsebuje datoteko z imenom Karl. txt, ki vsebuje zvitek jezika: "Karl je od Clare ukradel korale, Clara je od Karla ukradla klarinet." Štetje črk "K" je potrebno

Var f: besedilo; s: celo število; a: char;

(Povežite datoteko s spremenljivko datoteke in jo odprite za pisanje)

Dodeli (f, 'Karl. Txt'); Ponastavi (f);

(zaporedno prelistamo vse vrstice datoteke do zadnje)

Čeprav eof (f) ne

(zaporedno beremo vse znake vrstice do zadnjega v vrstici in preverjamo glede na "k")

Čeprav eoln (f) ne

Začnite brati (f, a); Če je a = 'k', potem je s: = s + 1; Konec;

(pojdite na naslednjo vrstico datoteke)

Vstavite besedilo v besedilno datoteko f1. Prepišite vrstico iz datoteke f1 v f2 - prva polovica datoteke v naprej, druga polovica pa v obratnem vrstnem redu znakov.

Var f1, f2: besedilo; s, snew, sa, sb: niz; n, y, i: celo število;

(Povežite datoteke s spremenljivkami datotek)

Dodeli (f1, 'datoteka1'); Dodeli (f2, 'file2');

(Vrstico preberemo s tipkovnice in jo pošljemo v datoteko številka 1)

Prepišite (f1); Branje (-i); Writeln (f1, s); Zapri (f1);

(Beremo vrstico iz datoteke številka 1)

Ponastavi (f1); Preberite (f1, s1); Zapri (f1);

(Poiščite sredino črte)

N: = dolžina (s1); Y: = n div 2;

(V novo spremenljivko zapišemo prvo polovico vrstice v vrstnem redu naprej, drugo polovico v obratnem vrstnem redu)

Za i: = 1 do y naredite

Snew: = Snew + s1 [i];

Za i: = n downto y + 1 do

Snew: = sew + s1 [i];

(Napišite novo vrstico v datoteko št. 2)

Prepišite (f2); Writeln (sNew); Pišite (f2, sNew); Zapri (f2);

Besedilne datoteke

Besedilne datoteke so povezane s spremenljivkami datotek standardnega tipa TEXT. Besedilne datoteke so namenjene shranjevanju besedila informacije. V teh vrstah datotek so na primer shranjene izvorne kode programov. Komponente (zapisi) besedilne datoteke imajo lahko spremenljivo dolžino, kar pomembno vpliva na način dela z njimi.

Besedilna datoteka se v Turbo Pascalu razlaga kot zbirka vrstic spremenljive dolžine. Do vsake vrstice je mogoče dostopati le zaporedno, začenši s prvo. Pri ustvarjanju besedilne datoteke se na koncu vsakega zapisa (vrstice) postavi poseben znak EOLN (End OfLiNe - konec vrstice), na koncu celotne datoteke pa znak EOF (End of File - konec datoteke) . Te funkcije je mogoče preizkusiti z istoimenskimi logičnimi funkcijami (glej spodaj). Pri ustvarjanju besedilnih datotek se uporabljajo naslednje sistemske konvencije:

Kodno zaporedje EOLN-ASCII # 13 (CR) in # 10 (LF);

EOF je ASCII koda # 26.

Za dostop do zapisov se uporabljajo postopki READ, READLN, WRITE, WRITELN. Razlikujejo se po možnosti dostopa do njih s spremenljivim številom dejanskih parametrov, ki so lahko znaki, nizi in številke. Prvi parameter v katerem koli od navedenih postopkov je lahko spremenljivka datoteke. V tem primeru se pokliče diskovna datoteka ali logična naprava, povezana s spremenljivko postopka ASSIGN. Če ni podana nobena spremenljivka datoteke, se standardne datoteke INPUT sklicujejo na OUTPUT.

Postopek PREBERITE.

Omogoča vnos znakov, nizov in številk. Oblika zahteve:

PREBERITE (<ф.п.>,<сп.ввода>) ali PREBERI (<сп.ввода>)

Tukaj<сп.ввода>- vnosni seznam: zaporedje ene ali več spremenljivk tipa CHAR, STRING, pa tudi katerega koli celega ali realnega tipa.

Pri vnosu spremenljivk tipa CHAR se iz datoteke prebere en znak in spremenljivki se dodeli vrednost branja. Če je pred branjem kazalec datoteke prišel do konca naslednje vrstice, bo rezultat branja znak CR (koda ASCII # 13), če je dosežen konec datoteke, pa znak EOF (koda # 26 ). Za vnos s tipkovnico se CR vnese s pritiskom na tipko Enter, EOF pa s pritiskom tipk CTRL in Z hkrati.

Pri vnosu spremenljivk tipa STRING je število znakov, ki jih postopek prebere in vnese v niz, enako največji dolžini niza, razen če ste prej naleteli na znake CR ali EOF. V tem primeru znaka CR in EOF sama ne ustrezata nizu. Če število znakov v vhodnem podatkovnem toku presega največjo dolžino niza, se "dodatni" znaki do konca niza zavržejo in nov klic READ vrne prazen niz. Tako postopek READ ne more prebrati zaporedja vrstic: prva vrstica se bo brala normalno, vse naslednje pa bodo prazne. Za vnos zaporedja vrstic uporabite postopek READLN (glejte spodaj).

Pri vnosu številskih spremenljivk rutina READ najprej izbere podniz v vhodnem toku po naslednjem pravilu: vsi vodilni presledki, zavihki in konci vrstic EOLN so preskočeni; po izbiri prvega pomembnega znaka, nasprotno, kateri koli od navedenih znakov ali znak EOF služi kot znak konca podniz. Tako izbran podniz se nato obravnava kot simbolična predstavitev številske konstante ustrezne vrste in se pretvori v notranjo predstavitev, nastala vrednost pa se dodeli spremenljivki. Če je zahtevana oblika predstavitve številskega konstante pride do napake V / I. Če med preskakovanjem vodilnih presledkov naletite na znak EOF, spremenljivka dobi vrednost 0. Upoštevajte, da Turbo Pascal ne predvideva šestnajstiških konstant.

Ko uporabljate postopek READ proti standardni datoteki INPUT, tj. pri tipkanju s tipkovnice se nizi znakov shranijo v medpomnilnik, ki se postopku posreduje šele po pritisku tipke Enter. To vam omogoča urejanje podatkov med vnosom. Za urejanje se uporabljajo naslednji ključi:

  • Backspace, Ctrl -H, premaknite kazalec v levo - izbrišite znak levo od kazalca;
  • premikanje kazalca v desno - obnovi prejšnjo vnosno vrstico po znakih;
  • Ctrl -Z Enter - dokonča vnos po postopku READ; preostali "dodatni" parametri znakov so nastavljeni na CHR (26), nizi so vrnjeni prazni, številčne spremenljivke pa ostanejo nespremenjene.

Največja dolžina vmesnega vmesnika tipkovnice je 127 znakov. Vnos s tipkovnico po postopku READ spremlja odmev vnesenih znakov na zaslonu računalnika.

Rutina READ je primerna za vnos številk. Pri dostopu do njega za vnos naslednjega celega ali realnega števila postopek "preskoči" oznake za konec vrstice, t.j. v resnici se celotna datoteka obravnava kot ena dolga vrstica, ki vsebuje besedilno predstavitev števil. V kombinaciji s preverjanjem konca datoteke s funkcijo EOF vam postopek READ omogoča, da na primer organizirate preprost wbd podatkovnih nizov, takole:

const

N = 1000; (Največja vhodna dolžina)

f: besedilo;

m: niz realnih;

I: celo število;

Začeti

assign (f, "prog.dat");

ponastavitev (£); i: = 1;

medtem ko ne EOF (f) in (i<= N) do

Začeti

beri (f, m [i]);

inc (i)

konec;

zapreti (f);

.......

konec.

Postopek PREBERI.

Omogoča vnos znakov, nizov in številk. Ta postopek je enak postopku READ, le da je po branju zadnje spremenljivke preostanek vrstice do oznake EOLN preskočen, zato se naslednji klic READLN ali READ začne pri prvem znaku nove vrstice. Druga možnost je, da lahko ta postopek prikličete brez parametra (glejte postopek READ), ki bo preskočil vse znake trenutne vrstice do EOLN.

Če se postopek uporablja za branje s tipkovnice, se pritisne tipka Enter na zaslonu prikaže kot zaporedje CR + LF in kazalec bo postavljen na začetek naslednje vrstice, medtem ko je v postopku READ tipka Enter odmeva z znakom CR in kazalec bo postavljen na začetek trenutne vrstice.

Postopek NAPIŠI.

Zagotavlja izhod informacij v besedilno datoteko ali jih prenese na logično napravo. Oblika zahteve:

NAPIŠI (<ф.п.>, <сп.вывода>) ali NAPIŠI (<сп.вывода>)

Tukaj<сп.вывода>- izhodni seznam: zaporedje enega ali več izrazov tipa CHAR, STRING, BOOLEAN, pa tudi katerega koli celega ali realnega tipa.

Spremenljivka datoteke<ф.п.>, če je podano, mora biti predhodno opisano kot spremenljivka tipa TEXT in s postopkom ASSIGN povezana z imenom datoteke ali logično enoto. Če spremenljivka datoteke ni, se predpostavlja izhod v standardno datoteko OUTPUT, ki je običajno povezana z zaslonom računalnika.

Vsak element na izhodnem seznamu je lahko v obliki

OutExpr [: MinWidth [: DecPlaces]]

Tu je OUTEXPR izhodni izraz;

MINWIDTH, DECPLACES - izrazi vrste WORD (oglati oklepaji pomenijo odsotnost parametrov, zaprtih v njih).

Podparameter MINWIDTH, če je prisoten, določa najmanjšo širino polja, v katero bo vpisana predstavitev znakov vrednosti OUTEXPR. Če je predstavitev znakov krajša od MINWIDTH, bo levo obložena s presledki, če je daljša, se podparameter MINWIDTH prezre in izpiše zahtevano število znakov.

Podparameter DECPLACES podaja število decimalnih mest v delnem delu realnega števila. Uporablja se lahko le skupaj z MINWIDTH in samo glede na sklepan izraz ene od resničnih tipov.

Če širina izhodnega polja ni določena, se ustrezen parameter izpiše po prejšnjem brez ločitve.

Znaki in vrstice se nespremenjeni prenesejo v izhodno datoteko, vendar imajo predpono z vodilnimi presledki, če je podana širina izhodnega polja in je ta širina večja od zahtevane za izpis.

Pri prikazu logičnih izrazov so vrstice TRUE ali FALSE prikazane glede na njihovo vrednost. (Logičnih konstant ni mogoče vnesti s postopki READ ali READLN.)

Realna števila so prikazana v eksponentni obliki, razen če je pododdelek DECPLACES podan, sicer je izbran format fiksne točke. Eksponentna oblika predstavlja realno število v obliki

S#. ############## E * ####,

kje:

Vesolje;

s prostor za pozitivna in "-" za negativna števila;

# decimalna številka;

E je decimalni osnovni simbol;

* znak "+" ali "-", odvisno od decimalnega mesta številke.

Če podparameter MINWIDTH izpustite, se predpostavlja njegova privzeta vrednost (23). Če je MINWIDTH manjši od 10, se šteje za 10.

Če je podparameter DECPLACES nič, se ne prikaže niti delni del števila niti decimalna vejica. Če je DECPLACES negativen, se ta parameter prezre in število se prikaže v eksponentni obliki, vključno z MINWIDTH. Če je vrednost DECPLACES večja od 18, se predpostavlja vrednost 18. Upoštevajte, da bo pri podajanju podparametra DECPLACES resnično število vedno prikazano v obliki fiksne točke z zahtevanim številom števk v ulomku, tudi če vrednost podparametra MINWIDTH se izkaže za premajhno, da bi se prilegal celoštevilčni del: v tem primeru se vrednost MINWIDTH samodejno poveča.

Pri izhodu na zaslon, ko dolžina prikazanega zaporedja znakov presega širino zaslona ali okna, ustvarjenega na njem, se "dodatni" znaki prenesejo v naslednjo vrstico zaslona. Ko je zaslon ali okno polno, se njegova vsebina premakne za eno vrstico navzgor.

PISNI postopek. Ta postopek je popolnoma enak postopku WRITE, le da je izhodni niz znakov zaključen s kodama CR in LF. Ko kličete WRITELN, lahko parameter izpustite<сп.вывода>: v tem primeru se oznaka EOLN posreduje datoteki, kar bo, ko se prikaže na zaslonu, povzročilo, da se kazalec premakne na začetek naslednje vrstice.

Logična funkcija EOLN. Vrne TRUE, če je v vhodni besedilni datoteki dosežen označevalec konca vrstice. Oblika zahteve:

EOLN<ф.п.>

Če je parameter<ф.п.>

Obstaja nekaj razlik v delovanju EOLN in EOF z diskovnimi datotekami in LUN -i. Bistvo je, da logična naprava ne more predvideti, kakšen bo rezultat branja naslednjega znaka. Zato pri delu z logično napravo funkcija EOLN vrne TRUE, če je bil zadnji znak, prebran iz naprave, EOLN ali EOF, pri branju z diska pa TRUE, če je naslednji prebrani znak EOLN ali EOF. Podobno razliko opazimo pri funkciji EOF: za logično napravo se TRUE vrne, če je bil zadnji znak EOF, in pri branju z diska, če je naslednji prebrani znak EOF. Z drugimi besedami, funkcije preizkusijo ustrezne lastnosti logične naprave po naslednjem branju in datoteke pred branjem.

Logična funkcija SEEKEOLN.

Preskoči vse presledke in zavihke do oznake za konec vrstice EOLN ali prvega pomembnega znaka in vrne TRUE, če je oznaka najdena. Oblika zahteve:

SEEKEOLN (<ф.п.>)

Če je parameter<ф.п.>izpuščena, funkcija preveri standardno datoteko INPUT.

Logična funkcija IŠČI.

Preskoči vse presledke, zavihke in oznake EOLN do označevalca konca datoteke ali prvega pomembnega znaka in vrne TRUE, če je oznaka najdena. Oblika zahteve:

IŠČI (<ф.п.>)

Če je parameter<ф.п.>izpuščena, funkcija preveri standardno datoteko INPUT.

V naslednjem primeru, ki ilustrira delo z besedilno datoteko, se šteje skupno število znakov v datoteki in rezultat se deli s 40.000 - na ta način lahko ocenite obseg rokopisa v tako imenovani registraciji in založniški listi:

f: besedilo;

s: niz;

Konst

Vsota: LongInt = 0; (To bo število znakov)

Začeti

Write ("Ime datoteke:"); (Zahteva ...)

Branje (-i); (in vnesite ime datoteke.)

dodeliti (f, s);

Ponastavi (f); (Odpri datoteko)

medtem ko EOF (f) ne (Štetje ...)

začeti (številka ...)

ReadLn (f, s); (znaki ...)

inc (vsota, dolžina) (v datoteki)

konec;

Zapri (f); (Zaprite datoteko)

WriteLn ("Glasnost =", Vsota / 40000: 6: 2, "račun")

konec.



Povezani članki: