PDF de programación - Archivos en VB.Net

Imágen de pdf Archivos en VB.Net

Archivos en VB.Netgráfica de visualizaciones

Actualizado el 21 de Marzo del 2018 (Publicado el 2 de Enero del 2018)
3.208 visualizaciones desde el 2 de Enero del 2018
581,6 KB
20 paginas
Creado hace 17a (18/04/2007)
Desarrollo de Aplicaciones Informáticas

Visual Basic .NET – Archivos

IES Quevedo

Archivos en VB.Net.

Contenidos del tema

2
1. Archivos de datos. Introducción.

....................................................................................


1. Utilizando las funciones integradas, propias de VbNet............................................. 3
1.2. Utilizando la clase Stream del espacio de nombres ‘System.IO’............................6
Consideraciones de programación................................................................................10
13
17
20


2. Gestión del sistema de archivos .
.................................................................................


3. Anexo 1. El espacio de nombres ‘System.IO de .Net’


.................................................

4. Bibliografía.


..................................................................................................................


En este capítulo vamos a tratar sobre la utilización de archivos de datos con VB.Net,

Fundamentalmente se comentarán los métodos de trabajo, tanto propios de las versiones
previas a .Net, tanto como las propias a la plataforma .Net.

Así mismo se especificarán los métodos y propiedades para manejar el sistema de archivos
y directorios.

Se proponen dos ejercicios, un editor básico de texto y una agenda de datos.

Prof.: Justo Sáez Arenas

_ Dpto Informática _

1

Desarrollo de Aplicaciones Informáticas

Visual Basic .NET – Archivos

IES Quevedo

1. Archivos de datos. Introducción.

Hasta ahora todos los datos que han manejado nuestros programas han sido temporales, es
decir, se perdían cuando finaliza el programa. Esta situación no es la mas deseable, ya que
en la mayoría de los casos interesa almacenar los datos que estamos manipulando.

Una de las formas más frecuente de almacenar los datos es mediante archivos. En Visual
Basic se dispone de dos clases de archivos:

• Secuenciales: están constituidos por una sucesión de caracteres de texto almacenados
consecutivamente. Esto supone que para acceder a un elemento concreto hay que
pasar previamente por los elementos que le anteceden.

• Binarios: permiten el almacenamiento de datos como una secuencia de bytes. Por

tanto, no importa el tipo de dato que almacenen ni su longitud de registro1.

El acceso secuencial funciona mejor cuando se desea procesar archivos compuestos
únicamente de texto, como los archivos creados con un editor de texto habitual, y no
archivos en los que los datos se dividen en una serie de registros. El acceso secuencial no
es adecuado para almacenar largas series de números, puesto que cada número se almacena
como una cadena de caracteres. Así, un número de cuatro dígitos necesitaría cuatro bytes
de almacenamiento en lugar de los dos bytes que se necesitan para almacenar el mismo
número como un entero.

Básicamente las funciones que intentaremos realizar, consistirán en conseguir manejar
archivos de texto de forma que podamos:

 Escribir y leer datos de una sola vez.
 Escribir y leer datos línea a línea.

Para ello vamos a hacer dos programas ejemplo:

1. Editor:

2. Agenda:

 Carga un archivo de texto en un TextBox.
 Guarda los datos de un TextBox en un archivo

 Lee la información de un fichero línea a línea y lo carga en un array de

memoria.

 Vuelca la información de un array en un fichero.



En ‘Visual Basic .Net’, se pueden manejar los archivos de texto, de dos formas:

1 Este tipo de ficheros no lo trataremos en este tema.

Prof.: Justo Sáez Arenas

_ Dpto Informática _

2

Desarrollo de Aplicaciones Informáticas

Visual Basic .NET – Archivos

IES Quevedo

1. Utilizando las funciones integradas, propias del lenguaje ‘Visual Basic .Net’.
2. Utilizando la clase Stream del espacio de nombres System.IO, común a la

plataforma .Net.

Veremos ambas, pero haremos hincapié en la segunda, puesto que es la forma más
novedosa y quizás también algo más complicada de entender, puesto que se fundamenta en
la utilización de las clases y objetos propios de .Net.

Aunque a primera vista, parezca más fácil de utilizar las funciones propias de VB,
pensemos que si sabemos como utilizar las clase comunes de ‘.Net’, nos puede servir para
utilizarlo con cualquier otro lenguaje de la plataforma.

1. Utilizando las funciones integradas, propias de VbNet

Vienen proporcionadas por el objeto FileSystem. Es similar a como se utilizaba en la
versión anterior de VB.

Las principales funciones integradas son:

 FileOpen. Abre un archivo de texto para entrada o salida.
 LineInput. Lee una línea de entrada desde de un archivo de texto.
 EOF. Comprueba el final del archivo.
 PrintLine.
 FileClose. Cierra el archivo.



Abrir un archivo para acceso secuencial

Cuando se abre un archivo para acceso secuencial, se debe especificar si se van a extraer
caracteres del archivo (modo Input), si se van a escribir caracteres en el archivo (modo
Output) o si se van a anexar caracteres al archivo (modo Append).

Utilizar FileOpen (Función) con la siguiente sintaxis:

FileOpen(FileNumber, FileName, OpenMode.[Input,Output,Append])

Donde:

FileNumber: Es un número que se asigna al fichero abierto. Podemos especificarlo
nosotros directamente pero es aconsejable solicitarlo previamente al sistema, para
ello tenemos la función FreeFile(), que solicita un número al sistema para asignarlo
al fichero que utilizaremos.

Para pedir un numero de fichero se haría:

Dim n_fich as byte

Prof.: Justo Sáez Arenas

_ Dpto Informática _

3

Desarrollo de Aplicaciones Informáticas

Visual Basic .NET – Archivos

IES Quevedo

n_fich= FreeFile()

FileName: Es el nombre de fichero que se quiere utilizar. Si no especifica la ruta
completa lo buscará en el directorio por defecto.

OpenMode: Cuando se abre un archivo secuencial para Input, el archivo ya debe
existir; de lo contrario, se producirá un error. No obstante, cuando se intenta abrir
un archivo inexistente para Output o Append, la instrucción FileOpen primero
crea el archivo y a continuación lo abre.

Una vez que se abre un archivo para una operación debe cerrarse con la instrucción
FileClose (FileNumber) antes de volver abrirlo para otro tipo de operación.

Para editar un archivo, primero se debe leer su contenido en variables del programa,
después realizar las operaciones que se quieran realizar con los datos y finalmente volver a
escribir las variables en el archivo. En las siguientes secciones se describe como se editan
los registros abiertos para acceso secuencial.

Leer cadenas de archivos

Para leer cadenas de ficheros:

1. Recuperar el contenido de un archivo de texto abriéndolo para Input.
2. Utilizar las funciones LineInput, InputString o Input para copiar el archivo a

variables de programa.

Visual Basic proporciona instrucciones y funciones que leen y escriben archivos
secuenciales carácter a carácter o línea a línea. Por ejemplo, el siguiente fragmento de
código lee un archivo línea a línea:

Dim LineasFich, lineaSig As String, NumFichero As Integer

NumFichero = FreeFile()

Do Until EOF(NumFichero)

LineaSig = LineInput(NumFichero)

LineasFich = LineasFich & LineaSig & Chr(13) & Chr(10)

Loop

Aunque la función LineInput reconoce el fin de una línea cuando llega a la secuencia
retorno de carro y de salto de línea, no incluye esa secuencia cuando lee la línea en la
variable. Si se desea conservar el retorno de carro y el saldo de línea, el código deberá
agregarlos.

Prof.: Justo Sáez Arenas

_ Dpto Informática _

4

Desarrollo de Aplicaciones Informáticas

Visual Basic .NET – Archivos

IES Quevedo

Puede utilizarse la función InputString para copiar un número especificado de caracteres
desde un archivo a una variable, siempre que la variable sea lo bastante grande. Por
ejemplo, el siguiente código utiliza InputString para copiar el número de caracteres de
CharCount a una variable:

LineasFich = InputString(NumFichero, NumCaracteres)

En combinación con la instrucción LOF(fichero) que nos devuleve la longitud del fichero,
podemos utilizar esta función para leer el fichero en una sola instrucción:

Dim TodoelTexto as string.

TodoelTexto = InputString(n_fich, LOF(n_fich)

También se puede utilizar la función Input, que lee una lista de números y expresiones de
cadena desde un archivo. Por ejemplo, para leer una línea de un archivo de listas de
distribución, puede utilizar las siguientes instrucciones:

Input(NumFichero, fname);

Input(NumFichero, lname);

Input(NumFichero, street)

Escribir cadenas en archivos

Para escribir en un archivo:

1. Utilizar FileOpen (Función) para abrir un archivo de texto para Output o Append.
2. Utilizar una función para escribir las cadenas. Por ejemplo:

Print(NumFichero, Cadena)

Visual Basic también admite la función Write, que escribe una lista de números y
expresiones de cadena en un archivo. Separa automáticamente cada expresión mediante
una coma y pone entre comillas las expresiones de tipo String. Por ejemplo:

Dim AnyString As String, AnyNumber, FileNum As Integer

AnyString = "Cualquier cosa"

AnyNumber = 23445

Write(FileNum, AnyString, AnyNumber)

Print(FileNum, AnyString & AnyNumber)

Prof.: Justo Sáez Arenas

_ Dpto Informática _

5

Desarrollo de Aplicaciones Informáticas

Visual Basic .NET – Archivos

IES Quevedo

El segmento de código anterior escribe dos expresiones en el archivo especificado por
FileNum. La primera contiene una cadena, y la segunda el número 23445.
  • Links de descarga
http://lwp-l.com/pdf8136

Comentarios de: Archivos en VB.Net (1)

Ameth
21 de Junio del 2018
estrellaestrellaestrellaestrellaestrella
No ha dejado ningún comentario
Responder

Comentar...

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios...
CerrarCerrar
CerrarCerrar
Cerrar

Tienes que ser un usuario registrado para poder insertar imágenes, archivos y/o videos.

Puedes registrarte o validarte desde aquí.

Codigo
Negrita
Subrayado
Tachado
Cursiva
Insertar enlace
Imagen externa
Emoticon
Tabular
Centrar
Titulo
Linea
Disminuir
Aumentar
Vista preliminar
sonreir
dientes
lengua
guiño
enfadado
confundido
llorar
avergonzado
sorprendido
triste
sol
estrella
jarra
camara
taza de cafe
email
beso
bombilla
amor
mal
bien
Es necesario revisar y aceptar las políticas de privacidad