Archivos en VB.Net

Aunque nos resistimos a reconocerlo, jamás vamos a deshacernos de ellos. De una forma u otra casi siempre necesitamos usar un archivo de texto en nuestras aplicaciones.

En ASP.Net para leer y escribir archivos de texto plano debemos incluir el espacio de nombres System.IO y utilizaremos Streams y el objeto File.

En particular los métodos más útiles del objeto File son:

  • CreateText (<NombreArchivo>)

  • AppendText (<NombreArchivo>)

  • OpenText (<NombreArchivo>)

que se utilizan para crear un archivo, agregar datos al final y abrirlo para leerlo respectivamente.

Leer un archivo

Para leer un archivo debemos asociar un StreamReader al mismo usando el método OpenText() de la siguiente forma:

Dim Lector as StreamReader = File.OpenText(“C:\datos.txt”)

Una vez que tenemos nuestro StreamReader usaremos para leer el archivo los siguientes métodos:

  • ReadLine()

  • ReadToEnd()

Ambos métodos devuelven un tipo string. El método ReadLine() devuelve todos los caracteres hasta encontrar un fin de línea. ReadToEnd() devuelve un string conteniendo todo el archivo.

Una vez que terminamos con el archivo, hay que cerrarlo usando el método Close() del Stream.

Escribir un archivo

Los métodos CreateText() y AppendText() del objeto File devuelven un StreamWriter asociado al archivo que queremos escribir.

Los métodos para escribir en el archivo son:

  • Write (<string que queremos escribir>)

  • WriteLine (<string que queremos escribir>)

La diferencia entre ambos métodos es que WriteLine() inserta un fin de linea al final del string que estamos escribirendo en el archivo.

Aquí va un pequeño ejemplo para escribir y leer el contenido de un archivo de texto.

Archivo Default.aspx.vb

Option Explicit On
Imports System.IO

Partial Class _Default Inherits System.Web.UI.Page

  Protected Sub Button1_Click(ByVal sender As Object,  _ 
                    ByVal e As System.EventArgs) 
                    Handles Button1.Click
    ‘Abre un archivo para escritura.
    Dim objEscritor As StreamWriter objEscritor = _
                                  File.AppendText(“C:\salida.txt”)  
    ‘Escribe en el archivo el contenido del TextBox.
    objEscritor.Write(TextBox1.Text) 
  
    ‘Cierra el archivo.
    objEscritor.Close()
  End Sub

  Protected Sub Button2_Click(ByVal sender As Object, _ 
                          ByVal e As System.EventArgs) 
                          Handles Button2.Click
    ‘Abre el Archivo para lectura.
    Dim objLector As StreamReader objLector = _ 
                                    File.OpenText(“C:\salida.txt”)
    ‘Lee el contenido y lo vuelca al TextBox 
    TextBox1.Text = “”
    TextBox1.Text = objLector.ReadToEnd()
    ‘Cierra el archivo.
    objLector.Close()
  End Sub
End Class


Archivo Default.aspx.

<%@ Page Language=”VB” AutoEventWireup=”false”
     CodeFile=”Default.aspx.vb” Inherits=”_Default” %>
<!DOCTYPE html PUBLIC “-//W3C//DTD XHTML 1.0 Transitional//EN”
   “
http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd”>
<html xmlns=”
http://www.w3.org/1999/xhtml”>
<head runat=”server”>
  <title>Escribir/Leer archivos</title>
</head>
<body>
  <form id=”form1″ runat=”server”> 
    <div>
      <asp:TextBox ID=”TextBox1″ runat=”server”
         BorderStyle=”Ridge” Height=”133px” 
         TextMode=”MultiLine” Width=”317px”>
      </asp:TextBox>
      <br /> <br />
      <asp:Button ID=”Button1″ runat=”server” 
               Height=”25px” Text=”Escribir”
               Width=”75px” /> 
      <asp:Button ID=”Button2″ runat=”server”
               Height=”25px” Text=”Leer”
               Width=”75px” />
    </div>
  </form>
</body>
</html>

En otra entrada usaremos otros métodos y Server.MapPath para controlar exactamente dónde guardamos el archivo o de dónde lo leemos.¡A tener en cuenta! Es posible que el ejemplo de un error de autorización al intentar escribir el archivo. Esto se debe a que la cuenta de usuario ASPNET debe tener los permisos apropiados sobre la carpeta donde queremos guardar nuestro archivo.

Saludos.

7 Responses to “Archivos en VB.Net”


  1. 1 Polux octubre 11, 2008 a las 2:30 pm

    Muchas gracias Man esto me sera de gran ayuda

  2. 2 Lukja enero 2, 2009 a las 10:08 am

    Gracias, me simplifico las cosas

  3. 3 Diogenes CPinto febrero 11, 2009 a las 4:00 pm

    aun tengo una duda….
    creo que archivo de texto le guardo, cadena, pero despues a este archivo ya creado le deceo seguir insertando mas cadenas,
    alguien me puede decir como hacerle..

    Muchas Gracias, y espero su aportacion, aun toy nuevo en vb.net

  4. 4 trukof julio 29, 2009 a las 11:33 am

    Gracias, es un ejemplo simple y entendible
    te lo agradesco

  5. 5 SOMAR febrero 1, 2010 a las 9:41 pm

    como puedo crear mis propios archivos con la extensión personalizada y ademas que contenga información que no se pueda leer con los diferentes programas(excel,notepad,etc..).Salvo con la aplicación que debo desarrollar

  6. 6 watch online simpsons abril 6, 2013 a las 12:00 pm

    ” Lisa rebukes her, saying, “Janey, school isn’t a waste of time” Immediately following, Ms. With this app, it is possible to listen to the real voices and sounds from ‘The
    Simpsons’ or opt to tune in to your own music inside background as you play this arcade-style game. The family members is manufactured up of Homer Simpson, that’s the man with
    the home, he’s an overweight safety inspector with the cities strength plant, he often offers bad suggestions.

  7. 7 http://automotixcouponcode.wordpress.com julio 1, 2013 a las 12:56 pm

    We absolutely love your blog and find the majority of your post’s to be just what I’m looking for.
    Does one offer guest writers to write content for yourself?

    I wouldn’t mind composing a post or elaborating on most of the subjects you write concerning here. Again, awesome web site!


Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s





A %d blogueros les gusta esto: