4.11.1. Tiedoston avaaminen (open)

Luettaessa tiedostosta (engl. file) ja kirjoittaessa tiedostoon on ensin avattava kyseinen tiedosto. Tiedosto avataan komennolla open. Komennolle annetaan parametreina avattavan tiedoston ni mi ja tarkoitus, jota varten tiedosto avataan. Tiedosto voidaan avata joko lukemista (r) tai kirjoitusta (w ja a) varten. Jos jälkimmäinen parametri puuttuu, ava taan tiedosto oletuksena vain lukua varten. open-komento palauttaa tiedoston tunnisteen (engl. file identifier), jota käyttämällä voidaan myöhemmässä vaiheessa ohjelmaa viitata avattuun tiedostoon (toimintoina luku, kirjoitus tai sulkeminen). Esimerkin 

open "juttu.txt" "r"

open "juttu.txt" "w"

open "juttu.txt" "a"

ensimmäinen open-komento avaa tiedoston juttu.txt vain lukua varten ja toinen vain kirjoitusta varten. Parametri w aiheuttaa sen, että avattava tiedosto tyhjennetään ennen avaamista. Jos sitä ei ole olemassa, luodaan uusi tyhjä tiedosto. Esimerkin viimeisellä rivillä tiedosto avataan vain kirjoitusta varten niin, että tiedostoa ei tyhjennetä ja luk u- ja kirjoituspää (engl. access position) siirretään tiedoston loppuun. Tällöin seuraava kirjoitusoperaatio tulee kohdistumaan tiedoston loppuun. Laittamalla +-merkki minkä tahansa par ametrin (r, w tai a) perään, voidaan avata tiedosto sekä lukua että kirjoitusta varten. Esimerkissä 

open "juttu.txt" "r+"

avataan tiedosto sekä lukua että kirjoitusta varten. Koska parametrina on r, on tiedoston oltava ennestään olemassa. Jos parametrina olisi w, ei tiedosto n tarvitsisi olla avattaessa olemassa.

Kun tiedostosta luetaan tai siihen kirjoitetaan rivi, tapahtuvat operaatiot aina tiedostokohtaisen luku- ja kirjoituspään osoittamasta kohdasta alkaen. Kun tiedosto avataan lukua varten, on luku- ja kirjoituspää olet uksena tiedoston ensimmäisen rivin alussa. Jos tiedosto avataan kirjoitusta varten a-parametrilla, siirtyy luku- ja kirjoituspää automaattisesti tiedoston loppuun.


previous gif next gif
Luk-tutkielma: Tcl/Tk -opiksi ja iloksi.