Cómo leer y escribir en un archivo de texto mediante Visual Basic 2005 o Visual Basic .NET

Para obtener una versión de Microsoft Visual Basic 6.0 de este artículo, consulte 183638 .

Resumen

En este artículo se muestra cómo leer y escribir en un archivo de texto mediante Microsoft Visual Basic 2005 o Microsoft Visual Basic. NET.

Requisitos

La lista siguiente describe el hardware, software, infraestructura de red y service packs recomendados que necesita:
  • Visual Basic 2005 o Visual Basic .NET
En este artículo se supone que está familiarizado con los temas siguientes:
  • Visual Basic 2005 o Visual Basic .NET

Leer y escribir archivos de texto

La sección de "lectura de un archivo de texto" muestra cómo utilizar el objeto StreamReader para leer un archivo de texto. La sección "escribir un archivo de texto (ejemplo 1)" y la sección "escribir un archivo de texto (ejemplo 2)" muestran cómo utilizar la clase StreamWriter para escribir texto en un archivo.

Leer un archivo de texto

El siguiente código utiliza la clase StreamReader para abrir, leer y cerrar el archivo de texto. Puede pasar el nombre de ruta de acceso de un archivo de texto al constructor StreamReader para abrir el archivo automáticamente. El método ReadLine lee cada línea de texto e incrementa el puntero de archivo a la siguiente línea como lo lee. Cuando el método ReadLine alcanza el final del archivo, devuelve Nothing.
  1. Inicie Microsoft Visual Studio 2005 o Microsoft Visual Studio. NET.
  2. Cree una nueva aplicación de consola en Visual Basic 2005 o Visual Basic .NET.
  3. Agregue el código siguiente al principio del archivo Module1.vb:
    Imports System.IO
  4. Agregue el código siguiente al procedimiento Sub Main .
    Dim objStreamReader As StreamReader    Dim strLine As String

    'Pass the file path and the file name to the StreamReader constructor.
    objStreamReader = New StreamReader("C:\Boot.ini")

    'Read the first line of text.
    strLine = objStreamReader.ReadLine

    'Continue to read until you reach the end of the file.
    Do While Not strLine Is Nothing

    'Write the line to the Console window.
    Console.WriteLine(strLine)

    'Read the next line.
    strLine = objStreamReader.ReadLine
    Loop

    'Close the file.
    objStreamReader.Close()

    Console.ReadLine()

  5. En el menú Depurar, haga clic en Iniciar para compilar y ejecutar la aplicación. Presione ENTRAR para cerrar la ventana de la consola.

    La ventana de consola muestra el archivo Boot.ini. Tenga en cuenta que el contenido del archivo Boot.ini puede variar para cada configuración. El resultado siguiente es un archivo Boot.ini de ejemplo:
    [boot loader]
    timeout=5
    default=multi(0)disk(0)rdisk(0)partition(1)\WINNT

    [operating systems]
    multi(0)disk(0)rdisk(0)partition(1)\WINNT="Windows 2000 Professional" /fastdetect
    C:\ = "Windows 98"

Escribir un archivo de texto (ejemplo 1)

El código siguiente utiliza la clase StreamWriter para abrir y escribir en para cerrar el archivo de texto. Similar a la clase StreamReader, puede pasar el nombre de ruta de acceso de un archivo de texto al constructor StreamWriter para abrir el archivo automáticamente. El método WriteLine escribe una línea completa de texto en el archivo de texto.
  1. Inicie Visual Studio .NET o Visual Studio 2005.
  2. Cree una nueva aplicación de consola en Visual Basic 2005 o Visual Basic .NET.
  3. Agregue el código siguiente al principio de Module1.vb:
    Imports System.IO
  4. Agregue el código siguiente al procedimiento Sub Main :
    Dim objStreamWriter As StreamWriter    
    'Pass the file path and the file name to the StreamWriter constructor.
    objStreamWriter = New StreamWriter("C:\Testfile.txt")

    'Write a line of text.
    objStreamWriter.WriteLine("Hello World")

    'Write a second line of text.
    objStreamWriter.WriteLine("From the StreamWriter class")

    'Close the file.
    objStreamWriter.Close()

  5. En el menú Depurar, haga clic en Iniciar para compilar y ejecutar la aplicación.

    Este código crea un archivo denominado Test.txt en la unidad C. abrir Test.txt en un editor de texto como el Bloc de notas. Test.txt contiene dos líneas de texto:
    Hello World
    From the StreamWriter class

Escribir un archivo de texto (ejemplo 2)

El código siguiente utiliza la clase StreamWriter para abrir y escribir en para cerrar el archivo de texto. A diferencia del ejemplo anterior, este código pasa dos parámetros adicionales al constructor.

El primer parámetro es la ruta de acceso y el nombre del archivo. El segundo parámetro es True, indica que el archivo se abre en modo anexar. Si se especifica
False para el segundo parámetro, el contenido del archivo se sobrescriben cada vez que ejecute el código. El tercer parámetro especifica Unicode para que StreamWriter codifica el archivo en Unicode. También puede especificar los métodos de codificación siguientes para el tercer parámetro:
  • ASCII
  • BigEndianUnicode
  • UTF7
  • UTF8
El método Write es similar al método WriteLine , salvo que Write no incrusta automáticamente un retorno de carro o combinación de caracteres (CR/LF) de avance de línea. Esto es útil cuando desea escribir un carácter a la vez.
  1. Inicie Visual Studio .NET o Visual Studio 2005.
  2. Cree una nueva aplicación de consola en Visual Basic 2005 o Visual Basic .NET.
  3. Agregue el código siguiente al principio de Module1.vb:
    Imports System.IOImports System.Text

  4. Agregue el código siguiente al procedimiento Sub Main en el código existente:
    Dim objStreamWriter As StreamWriter   Dim x As Long

    'Open the file.
    objStreamWriter = New StreamWriter("C:\Test2.txt", True, _
    Encoding.Unicode)

    'Write out the numbers 1 through 10 on the same line.
    For x = 1 To 10
    objStreamWriter.Write(x)
    Next x

    'Close the file.
    objStreamWriter.Close()

  5. En el menú Depurar, haga clic en Iniciar para compilar y ejecutar la aplicación.

    Este código crea un archivo denominado Test2.txt en la unidad C. abrir Test2.txt en un editor de texto como el Bloc de notas. Test2.txt contiene una sola línea de texto:
    12345678910

    Nota: Si ejecuta el código varias veces, el texto "123456789" se repite en la misma línea.

Lista de código completa

'Read a Text FileImports System.IO
Module Module1

Sub Main()
Dim objStreamReader As StreamReader
Dim strLine As String

'Pass the file path and the file name to the StreamReader constructor.
objStreamReader = New StreamReader("C:\Boot.ini")

'Read the first line of text.
strLine = objStreamReader.ReadLine

'Continue to read until you reach the end of the file.
Do While Not strLine Is Nothing

'Write the line to the Console window.
Console.WriteLine(strLine)

'Read the next line.
strLine = objStreamReader.ReadLine
Loop

'Close the file.
objStreamReader.Close()

Console.ReadLine()
End Sub
End Module

'Write a Text File: Version 1
Imports System.IO
Module Module1

Sub Main()
Dim objStreamWriter As StreamWriter

'Pass the file path and the file name to the StreamWriter constructor.
objStreamWriter = New StreamWriter("C:\Text.txt")

'Write a line of text.
objStreamWriter.WriteLine("Hello World")

'Write a second line of text.
objStreamWriter.WriteLine("From the StreamWriter class")

'Close the file.
objStreamWriter.Close()

End Sub
End Module

'Write a Text File: Version 2
Imports System.IO
Imports System.Text
Module Module1

Sub Main()
Dim objStreamWriter As StreamWriter
Dim x As Long

'Open the file.
objStreamWriter = New StreamWriter("C:\Test2.txt", True, _
Encoding.Unicode)

'Write out the numbers 1 through 10 on the same line.
For x = 1 To 10
objStreamWriter.Write(x)
Next x

'Close the file.
objStreamWriter.Close()
End Sub

End Module

Solución de problemas

Siempre que un archivo de salida o de entrada, es buena práctica para ajustar el código dentro de un bloque Try de final de Try en caso de que se produzca un error de programación. Algunos errores posibles incluyen un archivo que no existe, o un archivo que ya está en uso.

Referencias

Para obtener más información, visite los siguientes sitios Web de Microsoft:
Propiedades

Id. de artículo: 315828 - Última revisión: 9 ene. 2017 - Revisión: 1

Comentarios