Documentos de Académico
Documentos de Profesional
Documentos de Cultura
En este documento les presentaré la forma de utilizar archivos en un ejemplo sencillo. El tutorial espera
poder lograr la creación de archivos de texto plano (txt) y luego poder mostrar el contenido de cada uno de
ellos.
Paso 1. Crearemos una aplicación de Escritorio con Visual Basic 2008 Express (o Visual Studio 2008). El
nombre de la aplicación será Block.
Una vez que hayamos dado clic al botón aceptar tendremos el diseño del formulario tal como se ve en la
siguiente imagen:
Para poder manipular el texto vamos a crear dos botones, uno para abrir un documento existente y otro
para guardar un documento.
El diseño del formulario debería verse más o menos como la siguiente imagen:
Lo único que hemos modificado es la propiedad Text de cada uno de los botones (ver la imagen que
continúa como referencia)
En button1 hemos puesto como valor Abrir en la propiedad Text. En cambio, en button2, el valor ingresado
ha sido Guardar.
Como la idea es que el formulario sea capaz de guardar y abrir texto, entonces vamos a necesitar un espacio
donde poder escribir. Para eso pondremos un cuadro te texto (TextBox) que nos permitirá escribir y mostrar
información hacia y desde el archivo.
Claramente un Textbox recién arrastrado a la ventana no se ve de esa forma, así que lo que se modificó
fueron dos propiedades del Textbox1:
Se cambió la propiedad Multiline desde el valor False al valor True. Y la propiedad ScrollBars desde None a
Vertical.
Estas propiedades permiten entregarle algunos aspectos de diseño y funcionalidad mejorada a los cuadros
de texto. Multiline permite escribir y manipular múltiples líneas dentro del cuadro de texto.
Por su parte, ScrollBars permite mostrar la barra de desplazamiento vertical, de tal manera de poder revisar
el texto desde arriba hacia abajo (y viceversa usando la rueda del ratón, la que también es conocida como
Scroll)
Para darle una funcionalidad inicial, lo que vamos a hacer es doble clic sobre el botón que tiene por texto
Guardar.
Al realizar dicha acción debería aparecer la vista de código que se encargará de realizar cierto trozo de
código cuando el usuario presione dicho botón.
End Sub
End Class
Aquello que está entre Private Sub Button2_Click… y End Sub es el trozo de código que se va a ejecutar
cuando el usuario realiza la acción clic.
En dicho caso, lo que vamos a hacer es asumir que el contenido de Textbox1 tiene información y vamos a
grabar un archivo llamado documento.txt dentro del disco C: en la raíz del mismo, es decir, el archivo se
ubicará dentro de c:\documento.txt.
Para traducir esta acción en código deberíamos llegar a tener algo como la imagen siguiente:
Ahora veamos qué hace cada línea.
Las primeras líneas con Dim crean variables de acuerdo al tipo definido luego de la palabra reservada As.
nombreArchivo es de tipo String y archivoFisico es de tipo StreamWriter. En español, String se reconoce
como una variable de Cadena de Caracteres y StreamWriter es un Escritor de Flujo (nombre con el que se
conoce también a los archivos). En primera instancia, cuando le pasamos el nombre del archivo a la
declaración de New IO.StreamWriter(nombreArchivo) estamos creando el archivo que indicamos y lo
dejamos listo para escribir en él.
archivoFisico.Write(Textbox1.Text) guarda el contenido que esté escrito dentro del control de Texto. Dicho
contenido va a dar al archivo físico en disco.
La línea archivoFisico.Flush( ) permite refrescar los datos que estén aún en memoria RAM y enviar dichos
datos directo al archivo físico en disco.
La línea final, archivoFisico.Close( ) cierra el archivo físico.
Es importante cerrar los archivos, pues cuando quedan abiertos pueden perderse algunos datos. La teoría es
similar al hecho de desconectar el pendrive con seguridad, en vez de hacerlo a “lo compadre”. Cuando se
saca el pendrive sin usar la opción de expulsar o desconectar con seguridad puede producirse algún tipo de
pérdida, o que finalmente el pendrive quede inutilizable.
Probaré ejecutando el programa y escribiendo algo de texto en él para ver cómo es que se comporta, y si
acaso graba o no el archivo.
Esta es la vista antes de presionar el botón Guardar.
Así que al menos ya hay datos dentro del archivo, aunque el acento parece que se fue muy, muy lejos.
De todos modos, la tarea de almacenamiento está terminada.
Lo que nos interesa ahora es poder hacer el proceso inverso. Cómo rescatar el archivo creado usando el
botón con el texto Abrir.
Para eso hacemos doble clic en dicho botón (estando eso sí en modo de diseño del formulario)
Al igual que hicimos con el botón anterior, escribiremos el código entre las líneas Private Sub
Button1_Click… y End Sub.
La primera línea, al igual que en caso anterior sirve para almacenar el nombre del archivo que se pretende
leer. En este caso “C:\documento.txt”
El segundo elemento se crea como archivoLectura. Esta vez, se crea la variable como un Lector de Flujo o
StreamReader. Tal como en el caso anterior se le pasa la ruta del archivo para que entienda desde donde
debe leer los datos.
Luego, ponemos todo el texto del archivo dentro del TextBox1. Para eso utilizamos la propiedad Text del
Textbox1 y le asignamos lo que nos devuelva el llamado a la función ReadToEnd del archivoLectura (Read To
End quiere decir Leer hasta el final)
Una vez que ya se ha puesto el texto completo en el textbox, procedemos finalmente a cerrar el archivo
usando la acción Close de archivoLectura.
Obviamente hay otras formas de Guardar y de Leer. Para quienes quieran ahondar en el tema pueden
revisar el uso de OpenFileDialog y SaveFileDialog (búsqueda recomendada en Google: cómo usar
SaveFileDialog con Visual Basic .Net)