Expressió Put

Escriu un registre d'un fitxer relatiu o d'una seqüència de bytes en un fitxer binari.

Vegeu també: Expressió Get

Sintaxi:


Put [#] FileNumber As Integer, [position], Variable

Paràmetres:

FileNumber: Qualsevol expressió d'enter que defineix el fitxer on voleu escriure.

Posició: Per a fitxers relatius (fitxers d'accés aleatori), el nombre del registre que voleu escriure.

Per als fitxers binaris (accés binari), la posició del byte al fitxer on voleu començar a escriure.

Variable: Nom de la variable que voleu escriure al fitxer.

Nota per a fitxers relatius: Si el contingut d'esta variable no coincideix amb la longitud del registre que s'especifica a la clàusula Len de l'expressió Open, l'espai entre el final del registre que s'acaba d'escriure i el registre següent s'omple amb dades existents del fitxer al qual escriviu.

Nota per als fitxers binaris: El contingut de les variables s'escriu en la posició especificada, i la busca del fitxer s'insereix directament després de l'últim byte. No es deixa cap espai entre els registres.

Exemple:


Sub ExampleRandomAccess
Dim iNumber As Integer
Dim sText As Variant ' Ha de ser un tipus de variant
Dim aFile As String
    aFile = "c:\data.txt"
    iNumber = Freefile
    Open aFile For Random As #iNumber Len=32
    Seek #iNumber,1 ' Posició per començar a escriure
    Put #iNumber,, "Esta és la primera línia de text" ' Ompliu la línia amb text
    Put #iNumber,, "Esta és la segona línia de text"
    Put #iNumber,, "Esta és la tercera línia de text"
    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,,"Això és text nou"
    Get #iNumber,1,sText
    Get #iNumber,2,sText
    Put #iNumber,20,"Este és el text del registre 20"
    Print Lof(#iNumber)
    Close #iNumber
End Sub

Ens cal la vostra ajuda!