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

Seleccione idioma Seleccione idioma
Id. de artículo: 315828 - Ver los productos a los que se aplica este artículo
Para obtener una versión 6.0 de Microsoft Visual Basic de este artículo, consulte 183638.
Expandir todo | Contraer todo

En esta página

Resumen

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

Requisitos

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

Leer y escribir archivos de texto

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

Leer un archivo de texto

El código siguiente utiliza la clase StreamReader para abrir, leer y cerrar el archivo de texto. Se puede pasar el nombre de ruta de acceso de un archivo de texto para el constructor de clase StreamReader para abrir el archivo automáticamente. El método ReadLine lee cada línea de texto y incrementa el puntero de archivo la siguiente línea cuando se lee. Cuando el método ReadLine llega al final del archivo, devuelve Nothing.
  1. Inicie Microsoft Visual Studio 2005 o Microsoft Visual Studio.NET.
  2. Crear una nueva aplicación de consola en 2005 de Visual Basic 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 el Ventana de la consola.

    La ventana de consola muestra el archivo Boot.ini. Nota que el contenido del archivo Boot.ini puede variar desde la configuración para 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, escribir y para cerrar el archivo de texto. Similar en StreamReader, puede pasar el nombre de ruta de acceso de un archivo de texto para el constructor de StreamWriter para abrir el archivo automáticamente. El método WriteLine escribe una línea completa de texto en el archivo de texto.
  1. Iniciar 2005 Visual Studio o Visual Studio.NET.
  2. Crear una nueva aplicación de consola en 2005 de Visual Basic 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 tal 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, escribir y para cerrar el archivo de texto. A diferencia de en el ejemplo anterior, este código pasa dos parámetros adicionales a la constructor.

El primer parámetro es la ruta de acceso de archivo y el nombre de archivo de el 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 es sobrescribe cada vez que se ejecuta el código. El tercer parámetro especifica Unicode para que StreamWriter codifica el archivo en Unicode. También puede especificar lo siguiente métodos de codificación para el tercer parámetro:
  • ASCII
  • BigEndianUnicode
  • UTF7
  • UTF8
El método Write es similar al método WriteLine , excepto en que escribe no incrustar automáticamente un retorno de carro y un avance (CR/LF) de línea combinación de caracteres. Esto es útil cuando desea escribir un carácter en un tiempo.
  1. Iniciar 2005 Visual Studio o Visual Studio.NET.
  2. Crear una nueva aplicación de consola en 2005 de Visual Basic o Visual Basic .NET.
  3. Agregue el código siguiente al principio de Module1.vb:
    Imports System.IO
    Imports 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. abierto Test2.txt en un editor de texto tal como el Bloc de notas. Test2.txt contiene una sola línea de texto:
    12345678910
    							
    Nota Si ejecuta el código varias veces, es el texto "123456789" se repite en la misma línea.

Código completo

'Read a Text File
Imports 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

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

Referencias

Para obtener más información, visite el siguiente sitio Web sitios:
¿Cómo...¿Leer un archivo de texto?
http://msdn.Microsoft.com/en-us/library/db5x7c0d.aspx


¿Cómo...¿Leer y escribir archivos de gran tamaño?
http://msdn.Microsoft.com/en-us/library/6ka1wd3w (v=vs.80) .aspx

Clase StreamReader
http://msdn.Microsoft.com/en-us/library/System.IO.StreamReader (v=vs.71) .aspx

StreamWriter (clase)
http://msdn.Microsoft.com/en-us/library/System.IO.StreamWriter (v=vs.71) .aspx

Propiedades

Id. de artículo: 315828 - Última revisión: jueves, 7 de junio de 2012 - Versión: 3.0
La información de este artículo se refiere a:
  • Microsoft Visual Basic 2005
  • Microsoft Visual Basic .NET 2003 Standard Edition
  • Microsoft Visual Basic .NET 2002 Standard Edition
Palabras clave: 
kbvs2005swept kbvs2005applies kbhowtomaster kbmt KB315828 KbMtes
Traducción automática
IMPORTANTE: Este artículo ha sido traducido por un software de traducción automática de Microsoft (http://support.microsoft.com/gp/mtdetails) en lugar de un traductor humano. Microsoft le ofrece artículos traducidos por un traductor humano y artículos traducidos automáticamente para que tenga acceso en su propio idioma a todos los artículos de nuestra base de conocimientos (Knowledge Base). Sin embargo, los artículos traducidos automáticamente pueden contener errores en el vocabulario, la sintaxis o la gramática, como los que un extranjero podría cometer al hablar el idioma. Microsoft no se hace responsable de cualquier imprecisión, error o daño ocasionado por una mala traducción del contenido o como consecuencia de su utilización por nuestros clientes. Microsoft suele actualizar el software de traducción frecuentemente.
Haga clic aquí para ver el artículo original (en inglés): 315828

Enviar comentarios

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com