Welcome to Scribd, the world's digital library. Read, publish, and share books and documents. See more
Download
Standard view
Full view
of .
Save to My Library
Look up keyword
Like this
83Activity
0 of .
Results for:
No results containing your search query
P. 1
Capitulo 6 Visual Basic

Capitulo 6 Visual Basic

Ratings:

4.73

(11)
|Views: 13,691 |Likes:
Published by boyforbaby
Manual de Visual Basic
Manual de Visual Basic

More info:

Published by: boyforbaby on Nov 09, 2007
Copyright:Attribution Non-commercial

Availability:

Read on Scribd mobile: iPhone, iPad and Android.
download as DOC, PDF, TXT or read online from Scribd
See more
See less

06/13/2013

pdf

text

original

 
Visual Basic - Guía del Estudiante Cap. 6
FICHEROS EN VISUAL BASICExisten tres tipos de ficheros donde podremos almacenar y leer datos:- Secuenciales- Aleatorios (Random)- BinariosCada uno de ellos tiene sus aplicaciones y particularidades.FICHEROS SECUENCIALESEste tipo de ficheros nos permite guardar información de cualquier longitud. En este tipo deficheros, la información se guarda colocando un carácter tras otro. La forma de leerlos es,igualmente, carácter tras carácter. (Byte tras byte). Son los mas sencillos de manejar, y losutilizados para guardar texto en ASCII. Permiten guardar datos en un fichero con un determinadonombre, "machacando" la información de otro posible fichero que ya estuviese en el disco con elmismo nombre, o añadir la información nueva a continuación de la ya existente.Para abrir un fichero secuencial para guardar información, debemos ejecutar la siguienteinstrucción:
Open
Nombrefichero
 
For Output As #
Numerocanal 
De esta forma, si ya existía un fichero llamado
Nombrefichero
, sobreescribiremos dicho ficheroperdiendo la información que contuviese. Es la forma típica de hacerlo cuando modificamos untexto. Para añadir la nueva información tras la ya existente, deberemos abrirlo con la siguienteinstrucción:
Open
Nombrefichero
 
For Append As #
Numerocanal Numerocanal 
debe ser un número comprendido entre 1 y 255. Representa el número del canalpor donde introduciremos los datos. Normalmente se llama también
número de archivo
. Nopuede haber mas de un archivo abierto con un
número de canal 
determinado.Para cerrar un fichero secuencial, basta con ejecutar la instrucción:
Close #
 
Numerocanal 
Si no se especifica
Numerocanal 
(la instrucción
Close
a secas) se cerrarán todos los ficherosabiertos actualmente.Para introducir la información, pueden emplearse dos métodos:
Print
y
Write
Nos centraremosde momento solamente en Print.
Print
Introduce la información de forma secuencial, byte tras byte tal como se comentó.Sirve para guardar textos. Por ejemplo si deseamos guardar en ese fichero elcontenido de una caja de texto llamada Text1, basta con ejecutar la siguienteinstrucción:LSB Visual Basic - Guía del Estudiante Capítulo 6 Página 1
 
Print #
NumerodeCanal,
 
Text1.TextEl texto queda en el fichero en caracteres ASCII, que se pueden leer con el Blocde Notas.Cuando los datos se han introducido con la instrucción
Print
, la forma de acceder a ese texto esmuy sencilla:Se abre el archivo con la instrucción
OpenOpen
Nombrefichero
For Input As #
Numerodecanal 
Se utiliza la instrucción
Input
o
Line Input
para sacar los datos del fichero.La instrucción
Input
tiene en este caso la siguiente sintaxis:VariableString =
Input
(
Numero de caracteres,
#
Numero de canal)
 Por ejemplo, VariableString =
Input
(1, #1) extrae un carácter del fichero abierto como #1. Elnúmero máximo de caracteres a extraer de un golpe mediante la instrucción
Input
está limitado a65.534.Verá un poco mas adelante la propiedad LOF de los ficheros secuenciales. LOF devuelve un valor igual a la longitud total del fichero. Si ejecutamos la instrucción :
Para no emplear una palabra tan larga como Numerodecanal, utilizaremos de ahora en adelanteel número 1 como número de canal. Recuerde que ese número puede ser un númerocomprendido entre el 1 y el 255 
VariableString =
Input
(
LOF
(1), #1)LOF(1)=longitud del fichero #1leeremos el fichero de una única vez. Este procedimiento puede ahorrarle cierto tiempo a la horade la lectura. (Por lo dicho anteriormente, este procedimiento de leer todo el fichero de un golpesolamente se podrá hacer si la longitud del fichero (
LOF
(1)) es inferior a 65.534 bytes. Tenga estopresente cuando vaya a leer un fichero que no sabe que longitud tiene. Para curarse en salud, lerecomiendo que lea los ficheros secuenciales carácter a carácter.
Input
(1,#X) pues tarda pocomas que leyéndolo de un golpe. Claro que para leer un fichero carácter a carácter debe poner unbucle en el que se van leyendo los caracteres hasta que llaga al final del fichero..La forma de hacer este bucle es la siguiente:Dim A As StringA es la variable donde meteremos el carácter que extraemos del fichero.Dim MiVariable as String MiVariable es una variable tipo string donde vamos a meter todoel contenido del ficheroDo Until EOF(1)El programa ejecutará este bucle hasta que se cumpla queEOF(1) sea True. EOF(NumerodeCanal) es una propiedad de losficheros cuandoestán abiertos, que es True cuando la posición delpuntero de lectura apunta al carácter Fin De Fichero (End Of File)que es el carácter siguiente al último carácter de texto de ese fichero.A = Input (1, #1)Estrae un carácter del fichero abierto por el canal número 1. AlLSB Visual Basic - Guía del Estudiante Capítulo 6 Página 2
 
leer este carácter, el puntero de lectura avanza automáticamentetantos caracteres como haya leído, colocándose sobre el primer carácter noleído.MiVariable = MiVariable & ACon esta línea vamos anexando el carácter leído a la variableMiVariable. En vez de utilizar una variable, podríamos poner esetexto sobre un TextoBox o un RichTextBox (RTB) (Lo veráproximamente). Si lo ponemos en un RTB esta línea sería:RTB.SelText = ALoopVuelve al comienzo del bucle.Close #1Cierra el ficheroSólo se utilizará la instrucción
Input
con archivos abiertos en modo
Input
o
Binary
. (Los BinarySe verán a continuación) A diferencia de la instrucción
Input #
, (la veremos a continuación, pueses la instrucción que deberá utilizar para leer archivos escritos con la instrucción
Write
),
Input
devuelve todos los caracteres que lee, incluyendo puntos y coma, retornos de carro, avances delínea, comillas y espacios iniciales.Existe una instrucción,
Input$
, que asume que el dato a leer es un String. (Cadena decaracteres). Puede ahorrar un poco de memoria usando esta instrucción en lugar de
Input.
Nota
Se proporciona otra función (InputB) para su uso con datos de byte incluidos en archivos detexto. En lugar de especificar el número de caracteres a devolver, número especifica el número debytes.
INSTRUCCION LINE INPUT
La instrucción
Line Input
se utiliza para extraer una línea completa. Tiene la siguientesintaxis:
Line Input #
 
Número de canal, VariableString 
Mediante esta instrucción se extrae una línea completa (los caracteres delimitados entre dosretornos de carro), y se le asigna esa cadena a
VariableString 
Una línea es un trozo de texto delimitado por los caracteres 13 (Retorno de carro) y 10 (Avance delínea) La instrucción
Line Input #
lee un carácter cada vez en un archivo hasta que encuentra unretorno de carro (Chr(13)) o una secuencia retorno de carro - avance de línea (Chr(13) + Chr(10)).Las secuencias de retorno de carro - avance de línea no se tienen en cuenta y no se añaden a lacadena de caracteres extraída mediante esta instrucción. Cuando lea un archivo mediante
LineInput #
y lo quiere presentar en un TextBox o en el Printer, deberá introducirlos para evitar que lesalga todo el texto en una única línea.Con lo que se ha explicado, ya puede realizar un pequeño edito de textos. Este sencillo editor tiene un TextBox llamado
TBTexto
, donde podemos escribir el texto que queramos (con lapropiedad MultiLine = True y ScrollBars = Vertical), tres botones llamados
BAbrir 
(1), (2 a y b) y(3), para abrir el fichero y poner su contenido en TBTexto, y dos
BGuardar 
para guardar, unoabriendo el fichero For Append y el otro abriéndolo For Output. En este último, al guardar el textoborramos el contenido que del fichero, si ya existiera. En el primero, lo anexamos al final delmismo . Para conocer el nombre del fichero, ponemos un CommonDialog llamado CD1, con unfiltro CD1.Filter = “Ficheros de Texto |*.txt”LSB Visual Basic - Guía del Estudiante Capítulo 6 Página 3

Activity (83)

You've already reviewed this. Edit your review.
1 hundred reads
1 thousand reads
Jazmín Osorio liked this
carrizof liked this
Camila_Aegis liked this
Marcelo Salazar liked this
JCORASPE liked this
David Moreno liked this

You're Reading a Free Preview

Download
/*********** DO NOT ALTER ANYTHING BELOW THIS LINE ! ************/ var s_code=s.t();if(s_code)document.write(s_code)//-->