Write, WriteLine (Funciones)

Actualización: noviembre 2007

Escriben datos en un archivo secuencial. Los datos escritos con Write normalmente se leen desde un archivo con 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 _
)

Parámetros

  • FileNumber
    Obligatorio. Expresión Integer que contiene cualquier número de archivo válido.

  • Output
    Opcional. Una o varias expresiones delimitadas por coma para escribir en un archivo.

Excepciones

Tipo de excepción

Número de error

Condición

IOException

52

FileNumber no existe.

IOException

54

El modo de archivo no es válido.

Consulte la columna "Número de error" si está actualizando aplicaciones de Visual Basic 6.0 que utilizan el control de errores no estructurado. (Se puede comparar el número de error con respecto a Number (Propiedad, objeto Err)). Sin embargo, siempre que sea posible, debe considerarse la posibilidad de sustituir dicho control de errores por Información general sobre el control estructurado de excepciones de Visual Basic.

Comentarios

Las funciones Write y WriteLine se suministran a efectos de compatibilidad con versiones anteriores y pueden afectar al rendimiento. En el caso de aplicaciones no heredadas, el objeto My.Computer.FileSystem proporciona un rendimiento superior. Para obtener más información, vea Acceso a archivos con Visual Basic.

Si se omite Output, se escribirá una línea en blanco en el archivo. Las expresiones múltiples pueden separarse con comas.

A diferencia de la función Print, la función Write inserta comas entre los elementos y comillas a ambos extremos de las cadenas a medida que se van escribiendo en el archivo. No es necesario colocar delimitadores explícitos en la lista. Cuando Write se utiliza para escribir datos en un archivo, sólo son compatibles los formatos de datos numéricos, Boolean, date, null y Error. A continuación se incluyen algunas convenciones universales que se asumen para que los datos pueden siempre leerse e interpretarse correctamente mediante Input, con independencia de la configuración regional:

  • Los datos numéricos siempre se escribirán utilizando la coma como separador decimal.

  • Con datos de tipo Boolean, se imprime #TRUE# o #FALSE#. Las palabras clave True y False no se traducen, independientemente de la configuración regional.

  • Los datos de fecha se escribirán en el archivo según el formato de fecha universal. Cuando alguno de los componentes de fecha y hora falte o sea igual a cero, tan sólo se escribirá en el archivo la parte proporcionada.

  • Si los datos de Output están vacíos, no se escribirá nada en el archivo. Sin embargo, en el caso de datos nulos, se escribirá #NULL#.

  • Con datos de tipo Error, el resultado aparece como #ERROR errorcode#. Independientemente de la configuración regional, la palabra clave Error no se traducirá.

WriteLine inserta un carácter de nueva línea (es decir, un retorno de carro o avance de línea, o Chr(13) + Chr(10)) una vez que ha se escrito el último carácter de Output en el archivo.

Se pueden incrustar comillas en una cadena utilizando comillas dobles o "". Por ejemplo,

Dim x As String = "Double quotation marks aren't ""difficult"" to handle."

devuelve una cadena con el valor Double quotation marks aren't "difficult" to handle.

Para escribir en un archivo con las funciones Write o WriteLine, es necesario tener acceso de tipo Append desde la enumeración FileIOPermissionAccess. Para obtener más información, vea FileIOPermissionAccess (Enumeración).

Ejemplo

En este ejemplo se utiliza la función Write para escribir datos sin formato en un archivo secuencial.

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.

Notas para desarrolladores de dispositivos inteligentes

Esta función no es compatible.

Requisitos

Espacio de nombres:Microsoft.VisualBasic

**Módulo:**FileSystem

**Ensamblado:**Visual Basic Runtime Library (en Microsoft.VisualBasic.dll)

Vea también

Tareas

Cómo: Escribir texto en archivos en Visual Basic

Cómo: Escribir texto en archivos con un objeto StreamWriter en Visual Basic

Referencia

Input (Función)

FileOpen (Función)

Print, PrintLine (Funciones)

Otros recursos

Acceso a archivos con Visual Basic