Modül
İçerikler
Dizin 🔎︎

# Aç İfadesi

Bir veri kanalı açar.

## Sözdizimi:

    Open FileName As String [For Mode] [Access IOMode] [Protected] As [#]FileNumber As Integer [Len = DatasetLength]

## Parametreler:

FileName: Açmak istediğiniz dosyanın adı ve yolu. Mevcut olmayan bir dosyayı açmaya çalışırsanız (Access = Read) bir hata iletisi görüntülenir. Mevcut olmayan bir dosyaya yazmaya çalışırsanız (Access = Write) yeni bir dosya oluşturulur.

Mode: Dosya kipini belirleyen anahtar kelime. Geçerli değerler: Ekle (sıralı dosyaya eklemek), İkilik (Get ve Put kullanılarak veriye erişilebilir), Girdi (veri kanalını okumak için açmak), Çıktı (veri kanalını yazmak için açmak) ve Rastgele (göreceli dosyaları düzenlemek).

IOMode: Erişim türünü tanımlayan anahtar kelime. Geçerli değerler: Read (salt okunur), Write (sadece yazılabilir), Read Write (ikisi de).

Protected: Dosyanın açıldıktıktan sonraki güvenlik durumuna ait anahtar sözcük. Geçerli değerler: Paylaşılmış (dosya diğer uygulamalar tarafından açılmış olabilir), Okuma kilidi (dosya okumaya karşı korumalı), Yazma kilidi (Dosya yazmaya karşı korumalı) Okuma Yazma Kilidi (dosya erişimlere kapalı).

FileNumber: Boş bir veri kanalının sayısını belirten, 0' dan 511'e kadar herhangi bir tamsayı ifadesidir. Dosyaya erişmek için komutları bu veri kanalı üzerinden gönderebilirsiniz. Dosya numarası, Open ifadesinden önce FreeFile fonksiyonu tarafından belirlenmek zorundadır.

DatasetLength: Rastgele erişimli dosyalar için kayıtların uzunluğunu ayarlar.

Sadece Open ifadesiyle ile açılmış bir dosyanın içeriğinde değişiklik yapabilirsiniz. Zaten açık olan bir dosyayı açmayı denerseniz hata mesajı ile karşılaşırsınız.

## Örnek:

    Sub ExampleWorkWithAFile

    Dim iNumber As Integer

    Dim sLine As String

    Dim aFile As String

    Dim sMsg As String

        aFile = "c:\data.txt"

        iNumber = Freefile

        Open aFile For Output As #iNumber

        Print #iNumber, "Bu metnin bir satırıdır"

        Print #iNumber, "Bu, metnin bir diğer satırıdır"

        Close #iNumber

        iNumber = Freefile

        Open aFile For Input As iNumber

        While Not eof(iNumber)

            Line Input #iNumber, sLine

            If sLine <>"" Then

                sMsg = sMsg & sLine & chr(13)

            End If

        Wend

        Close #iNumber

        MsgBox sMsg

    End Sub