Funzioni Write e WriteLine
Aggiornamento: novembre 2007
Scrivono dati in un file aperto in modalità Sequential. Per leggere da un file i dati scritti mediante Write, viene in genere utilizzato Input.
Public Sub Write( _
ByVal FileNumber As Integer, _
ByVal ParamArray Output As Object _
)
' -or-
Public Sub WriteLine( _
ByVal FileNumber As Integer, _
ByVal ParamArray Output() As Object _
)
Parametri
FileNumber
Obbligatorio. Espressione Integer nella quale è incluso qualsiasi numero di file valido.Output
Facoltativo. Una o più espressioni delimitate da virgole da scrivere in un file.
Eccezioni
Tipo di eccezione |
Numero di errore |
Condizione |
---|---|---|
FileNumber non esiste. |
||
Modalità di accesso ai file non valida. |
Se si esegue l'aggiornamento delle applicazioni Visual Basic 6.0 che utilizzano la gestione degli errori non strutturata, vedere la colonna "Numero di errore". È possibile confrontare il numero di errore con la Proprietà Number (oggetto Err). Se possibile, tuttavia, si consiglia di sostituire il controllo dell'errore con la procedura illustrata nella sezione Cenni preliminari sulla gestione strutturata delle eccezioni per Visual Basic.
Note
Le funzioni Write e WriteLine vengono fornite a scopo di compatibilità con le versioni precedenti e possono influire sulle prestazioni. Per le applicazioni non preesistenti, l'oggetto My.Computer.FileSystem garantisce prestazioni migliori. Per ulteriori informazioni, vedere Accesso ai file con Visual Basic.
Se Output viene omesso, nel file verrà stampata una riga vuota. Le espressioni possono essere separate da una virgola.
A differenza della funzione Print, nella funzione Write vengono inserite virgole tra gli elementi e le stringhe vengono racchiuse tra virgolette durante la scrittura nel file. Non è necessario inserire nell'elenco delimitatori espliciti. Quando per la scrittura di dati su un file viene utilizzata la funzione Write, per i dati sono supportati solo i formati numerico, Boolean, data, Null ed Error. Di seguito sono indicati i presupposti universali seguiti perché i dati possano essere sempre letti e interpretati correttamente mediante la funzione Input, indipendentemente dalle impostazioni internazionali.
I dati numerici vengono sempre scritti utilizzando il punto (.) come separatore decimale.
In caso di dati di tipo Boolean, viene stampato #TRUE# o #FALSE#. La parole chiave True e False non verranno tradotte, indipendentemente dalle impostazioni internazionali.
Le date vengono scritte nel file utilizzando il formato data universale. Se uno dei componenti di data o orario manca o è uguale a zero, nel file verrà scritta soltanto la parte specificata.
Se i dati di Output sono vuoti, nel file non verranno scritti elementi. Per i dati Null, tuttavia, nel file verrà scritto #NULL#.
Se è specificato il valore Error, l'output sarà #ERROR errorcode#. La parola chiave Error non verrà tradotta, indipendentemente dalle impostazioni internazionali.
Dopo l'ultimo carattere dell'argomento Output scritto nel file, WriteLine inserisce un carattere di nuova riga, ovvero una sequenza ritorno a capo/avanzamento riga oppure Chr(13) + Chr(10).
È possibile incorporare delle virgolette in una stringa utilizzando virgolette doppie o "". Ad esempio,
Dim x As String = "Double quotation marks aren't ""difficult"" to handle."
restituisce una stringa con il valore Double quotation marks aren't "difficult" to handle.
La scrittura in un file con la funzione Write o WriteLine richiede l'accesso Append dall'enumerazione FileIOPermissionAccess. Per ulteriori informazioni, vedere Enumerazione FileIOPermissionAccess.
Esempio
Nell'esempio riportato di seguito la funzione Write viene utilizzata per scrivere dati non elaborati in un file sequenziale.
FileOpen(1, "TESTFILE", OpenMode.Output) ' Open file for output.
Write(1, "This is a test.") ' Print text to file.
WriteLine(1) ' Print blank line to file.
WriteLine(1, "Zone 1", TAB(), "Zone 2") ' Print in two print zones.
WriteLine(1, "Hello", " ", "World") ' Separate strings with space.
WriteLine(1, SPC(5), "5 leading spaces ") ' Print five leading spaces.
WriteLine(1, TAB(10), "Hello") ' Print word at column 10.
' Assign Boolean, Date, and Error values.
Dim aBool As Boolean
Dim aDate As DateTime
aBool = False
aDate = DateTime.Parse("February 12, 1969")
' Dates and Booleans are translated using locale settings of
' your system.
WriteLine(1, aBool, " is a Boolean value")
WriteLine(1, aDate, " is a date")
FileClose(1) ' Close file.
Note per gli sviluppatori di applicazioni per Smart Device
Questa funzione non è supportata.
Requisiti
Spazio dei nomi:Microsoft.VisualBasic
**Modulo:**FileSystem
Assembly: Visual Basic Runtime Library (in Microsoft.VisualBasic.dll)
Vedere anche
Attività
Procedura: scrivere testo all'interno di file in Visual Basic
Procedura: scrivere testo all'interno di file con uno StreamWriter in Visual Basic