Πρόταση Open

Ανοίγει ένα κανάλι δεδομένων.

Σύνταξη:


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

Παράμετροι:

ΌνομαΑρχείου: Όνομα και διαδρομή του αρχείου που θα ανοίξει. Εάν προσπαθήσετε να διαβάσετε αρχείο που δεν υπάρχει (Πρόσβαση = Ανάγνωση), τότε εμφανίζεται μήνυμα σφάλματος. Εάν προσπαθήσετε να γράψετε σε αρχείο που δεν υπάρχει (Πρόσβαση = Εγγραφή), τότε δημιουργείται ένα νέο αρχείο.

Λειτουργία Λέξη-κλειδί που προσδιορίζει την κατάσταση του αρχείου. Έγκυρες τιμές: Append (προσάρτηση σε διαδοχικό αρχείο), binary (τα δεδομένα μπορούν να προσπελαστούν από οκτάδες χρησιμοποιώντας Get και Put), Input (ανοίγει κανάλι δεδομένων για ανάγνωση), Output (ανοίγει κανάλι δεδομένων για εγγραφή), και Random (επεξεργάζεται σχετικά αρχεία).

IOMode: Λέξη-κλειδί που προσδιορίζει τον τύπο προσπέλασης. Έγκυρες τιμές: Read (Μόνο για ανάγνωση), Write (Μόνο για εγγραφή), Read Write (και τα δύο).

Προστατευμένο: Λέξη-κλειδί που προσδιορίζει την κατάσταση ασφαλείας του αρχείου μετά το άνοιγμα. Έγκυρες τιμές: Shared (το αρχείο μπορεί να ανοιχτεί και από άλλες εφαρμογές), Lock Read (το αρχείο είναι προστατευμένο από ανάγνωση), Lock Write (το αρχείο είναι προστατευμένο από εγγραφή), Lock Read Write (απαγορεύει την προσπέλαση του αρχείου).

ΑριθμόςΑρχείου: Κάθε παράσταση ακέραιου που κυμαίνεται από 0-511 και υποδεικνύει τον αριθμό ελεύθερου καναλιού δεδομένων. Μπορείτε έπειτα να περάσετε εντολές μέσα από το κανάλι δεδομένων για να προσπελάσετε το αρχείο. Ο αριθμός του αρχείου θα πρέπει να οριστεί αμέσως πριν την συνάρτηση FreeFile πριν την πρόταση Open.

ΜήκοςΟρισμούΔεδομένων Για αρχεία τυχαίας προσπέλασης, καθορίζει το μήκος των εγγραφών.

note

Μπορείτε μόνο να τροποποιήσετε τα περιεχόμενα ενός αρχείου που ανοίχτηκε με την πρόταση Open. Αν προσπαθήσετε να ανοίξετε ένα αρχείο που είναι ήδη ανοιγμένο, θα εμφανιστεί ένα μήνυμα σφάλματος.


Παράδειγμα:


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, "Αυτή είναι μια γραμμή κειμένου"
    Print #iNumber, "Αυτή είναι μια άλλη γραμμή κειμένου"
    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

Παρακαλούμε, υποστηρίξτε μας!