Περιεχόμενα
Δείκτης 🔎︎

# Πρόταση Put#

Καταγράφει μια εγγραφή σε ένα σχετικό αρχείο ή μια ακολουθία byte σε ένα δυαδικό αρχείο.

Χρησιμοποιήστε την πρόταση Print# για να εκτυπώσετε δεδομένα σε σειριακό αρχείο κειμένου. Χρησιμοποιήστε την πρόταση Write# για να γράψετε δεδομένα σε σειριακό αρχείο κειμένου με χαρακτήρες οριοθέτησης.

### Σύνταξη:

    Put [#]fileNum, [recordNum|filePos], variable

### Παράμετροι:

fileNum: Οποιαδήποτε έκφραση ακεραίου που καθορίζει το αρχείο στο οποίο θέλετε να γράψετε.

recordNum, filePos: Για σχετικά αρχεία (αρχεία τυχαίας προσπέλασης), ο αριθμός της εγγραφής που θέλετε να γράψετε.

Για δυαδικά αρχεία (αρχεία δυαδικής προσπέλασης), η θέση byte στο αρχείο όπου θα αρχίσει η εγγραφή.

variable: Το όνομα της μεταβλητής που θέλετε να γράψετε στο αρχείο.

Σημείωση για αρχεία τυχαίας προσπέλασης: Αν τα περιεχόμενα αυτής της μεταβλητής δεν αντιστοιχούν στο μήκος των εγγραφών που καθορίστηκαν στον όρο Len της πρότασης Open, το κενό διάστημα από το τέλος των νέων δεδομένων εγγραφής έως την επόμενη εγγραφή συμπληρώνεται με τα υπάρχοντα δεδομένα του αρχείου.

Σημείωση για δυαδικά αρχεία: Τα περιεχόμενα των μεταβλητών εγγράφονται στην καθορισμένη θέση, και ο δείκτης αρχείου τοποθετείται αμέσως μετά το τελευταίο byte, χωρίς κενό διάστημα μεταξύ των εγγραφών.

### Παράδειγμα:

      Sub ExampleRandomAccess
          Dim iNumber As Integer
          Dim sText As Variant ' Πρέπει να είναι παραλλαγή
          Dim aFile As String
          aFile = "C:\Users\ThisUser\data.txt"
          iNumber = Freefile
          Open aFile For Random As #iNumber Len=32
          Seek #iNumber,1 ' Τοποθέτηση στη αρχή
          Put #iNumber, , "Αυτή είναι η πρώτη γραμμή του κειμένου" ' Συμπληρώστε τη γραμμή με κείμενο
          Put #iNumber, , "Αυτή είναι η δεύτερη γραμμή κειμένου"
          Put #iNumber, , "Αυτή είναι η τρίτη γραμμή κειμένου"
          Seek #iNumber,2
          Get #iNumber, , sText
          Print sText
          Close #iNumber
          iNumber = Freefile
          Open aFile For Random As #iNumber Len=32
          Get #iNumber, 2, sText
          Put #iNumber, , "Αυτό είναι ένα νέο κείμενο"
          Get #iNumber, 1, sText
          Get #iNumber, 2, sText
          Put #iNumber, 20, "Αυτό είναι το κείμενο στην εγγραφή 20"
          Print Lof(#iNumber)
          Close #iNumber
      End Sub

      Sub ExampleRandomAccess
          Dim iNumber As Integer
          Dim sText As Variant ' Πρέπει να είναι παραλλαγή
          Dim aFile As String
          aFile = "~/data.txt"
          iNumber = Freefile
          Open aFile For Random As #iNumber Len=32
          Seek #iNumber,1 ' Τοποθέτηση στη αρχή
          Put #iNumber, , "Αυτή είναι η πρώτη γραμμή του κειμένου" ' Συμπληρώστε τη γραμμή με κείμενο
          Put #iNumber, , "Αυτή είναι η δεύτερη γραμμή κειμένου"
          Put #iNumber, , "Αυτή είναι η τρίτη γραμμή κειμένου"
          Seek #iNumber,2
          Get #iNumber, , sText
          Print sText
          Close #iNumber
          iNumber = Freefile
          Open aFile For Random As #iNumber Len=32
          Get #iNumber, 2, sText
          Put #iNumber, , "Αυτό είναι ένα νέο κείμενο"
          Get #iNumber, 1, sText
          Get #iNumber, 2, sText
          Put #iNumber, 20, "Αυτό είναι το κείμενο στην εγγραφή 20"
          Print Lof(#iNumber)
          Close #iNumber
      End Sub

Σχετικά θέματα

Πρόταση Close

Πρόταση Get

Πρόταση Open