5/13/2018 Resumen asdfaasdf secuenciales - slidepdf.com
http://slidepdf.com/reader/full/resumen-asdfaasdf-secuenciales 1/24
Archivos secuenciales
Utilización y sintaxis
17 de febrero de 2012
Cynthia Gabriela Valles Núñez
Grupo A
5/13/2018 Resumen asdfaasdf secuenciales - slidepdf.com
http://slidepdf.com/reader/full/resumen-asdfaasdf-secuenciales 2/24
Ficheros secuenciales:
Es aquel fichero cuyos registros pueden ser tratados en secuencia, unos datos
detrás de otros. Después de haber leído un registro el dispositivo de lectura se
posiciona al principio del siguiente registro.
Este tipo de ficheros son muy convenientes cuando tenemos que leer todos losdatos del fichero. No podemos añadir datos a un fichero secuencial, se copia
todo en un fichero nuevo.
Ficheros indexados secuenciales:
Mediante este tipo de ficheros podemos solucionar el problema de los ficheros
secuenciales respecto a la actualización y acceso a un registro, haciéndolo de
forma casi directa, así como la realización de altas y bajas.
Este tipo de ficheros tiene que estar almacenado en un soporte físico de
acceso directo.
Todos los registros del fichero tendrán un campo clave para identificarlo de
forma única, no pudiendo existir dos registros con el mismo campo clave. Será
por este campo por el cual se graben en orden ascendente y se localicen los
registros del fichero.
Archivos secuenciales en C#
Sintaxis básica para C#
Tipo FILE:C de¿ne la estructura de datos FILE en el ¿chero de cabecera
³stdio.h´ para el manejo de ¿cheros. Nosotros siempre usaremos punteros aestas estructuras. La de¿nicion de esta estructura depende del
compilador, pero en general mantienen un campo con la posición actual de
lectura/escritura, un bu er para mejorar las prestaciones de acceso al ¿chero y
algunos campos para uso interno.
Función Fopen:
Sintaxis: FILE *fopen (char *nombre, char *modo); ´ esta función sirve para
abrir y crear ¿cheros en disco. El valor de retorno es un puntero a una
estructura FILE. Los parámetros de entrada son:
Nombre: una cadena que contiene un nombre de ¿chero valido, esto depende
del sistema operativo que estemos usando. El nombre puede incluir el camino
completo. Modo: especi¿ca en tipo de ¿chero que se abrirá o se creara y el tipo
de datos que puede contener, de texto o binarios: r: solo lectura. El ¿chero
debe existir. W: se abre para escritura, se crea un ¿chero nuevo o se sobre
escribe si ya existe.
5/13/2018 Resumen asdfaasdf secuenciales - slidepdf.com
http://slidepdf.com/reader/full/resumen-asdfaasdf-secuenciales 3/24
A: añadir, se abre para escritura, el cursor se sitúa al ¿nal del ¿chero. Si el
¿chero no existe, se crea.r+: lectura y escritura. El ¿chero debe existir.w+:
lectura y escritura, se crea un ¿chero nuevo o se sobrescribe si ya existe. a+:
añadir, lectura y escritura, el cursor se sitúa al ¿nal del ¿chero. Si el ¿chero no
existe, se crea.t: tipo texto, si no se especi¿ca ³t´ ni ³b´, se asume por defectoque es ³t´b: tipo binario.
Función fclose:
Sintaxis: int fclose (FILE *¿chero); Es importante cerrar los ¿cheros abiertos
antes de abandonar la aplicación. Esta función sirve para eso. Cerrar un ¿chero
almacena los datos que aún están en el bu erde memoria, y actualiza algunos
datos de la cabecera del ¿chero que mantiene el sistema operativo. Además
permite que otros programas puedan abrir el ¿chero para su uso. Muy a
menudo, los ¿cheros no pueden ser compartidos por varios programas. Un
valor de retorno cero indica que el ¿chero ha sido correctamente cerrado, si hahabido algún error, el valor de retorno es la constante EOF. El parámetro es un
puntero a la estructura FILE del ¿chero que queremos cerrar.
Función fgetc:
Sintaxis: int fgetc(FILE *¿chero);Esta función lee un carácter desde un ¿chero.
El valor de retorno es el carácter leído como un unsigned char convertido a int.
No hay ningún carácter disponible, el valor de retorno es EOF. El parámetro es
un puntero a una estructura FILE del ¿chero del que se hará la lectura.
Función fputc:
Sintaxis: int fputc (int carácter, FILE *¿chero); Esta función escribe un carácter
a un ¿chero.
El valor de retorno es el carácter escrito, si la
operación fue completada con exito, en caso contrario será EOF. Los
parámetros de entrada son el carácter a escribir, convertido a int y un puntero a
una estructura FILE del ¿chero en el que se hará la escritura.
Función feof:
Sintaxis: int feof (FILE *¿chero); Esta función sirve para comprobar si se haalcanzado el ¿nal del ¿chero. Muy frecuentemente deberemos trabajar con
todos los valores almacenados en un archivo de
forma secuencial, la forma que suelen tener los bucles para leer todos los datos
de un archivo es permanecer leyendo mientras no se detecte el ¿n de ¿chero.
Esta función suele usarse como prueba para veri¿car si se ha alcanzado o no
ese punto. El valor de retorno es distinto de cero solo si no se ha alcanzado el
5/13/2018 Resumen asdfaasdf secuenciales - slidepdf.com
http://slidepdf.com/reader/full/resumen-asdfaasdf-secuenciales 4/24
¿n de ¿chero. El parámetro es un puntero a la estructura FILE del ¿chero que
queremos veri¿car.
Función rewind:
Sintaxis: void rewind(FILE *¿chero);Es una
funcion heredada de los tiempos de las cintas magneticas. Literalmentesigni¿ca³rebobinar´, y hace referencia a que para volver al principio de un archivo alma-
cenado en cinta, había que rebobinarla. Eso es lo que hace esta función, sitúa
el cursor de lectura/escritura al principio del archivo. El parámetro es un
puntero a la estructura FILE del ¿chero que queremos rebo-binar.
Función fgets:
Sintaxis: char *fgets(char *cadena, int n, FILE *¿chero);Esta función esta
diseñada para leer cadenas de caracteres. Leera hasta n-1 caracteres o hasta
que lea un retorno de línea. En este ´último caso, el carácter de retorno de
línea también es leído. El parámetro n nos permite limitar la lectura para evitar desbordar el espacio disponible en la cadena. El valor de retorno es un puntero
a la cadena leída, si se leyó con éxito, y es NULLsi se detecta el ¿nal del
¿chero o si hay un error. Los parámetros son: la cadena a leer, el número
de caracteres máximo a leer y un puntero a una estructura FILE del ¿chero del
que se leerá.
Función fputs:
Sintaxis: int fputs(const char *cadena, FILE *stream);La función fputs escribe
una cadena en un ¿chero. No sé añade el carácter de retorno de línea ni el
carácter nulo ¿nal. El valor de retorno es un número no negativo o EOF en casode error. Los parámetros de entrada son la cadena a escribir y un puntero a la
estructura FILE del ¿chero donde se realizara la escritura.
Función fread:
Sintaxis: size t fread(void *puntero, size t tamaño, size t registros, FILE
*¿chero);Esta función está pensada para trabajar con registros de longitud
constante. Es capaz de leer desde un ¿chero uno o varios registros de la
misma longitud y a partir de una dirección de memoria determinada. El usuario
es responsable de asegurarse de que hay espacio su¿ciente para contener
la información leida. El valor de retorno es elnúmero de registros leídos, no el número de bytes. Los parámetros son: un
puntero a la zona de memoria donde se almacenaran los datos leidos, el
tamaño de cada registro, el número de registros a leer y un puntero a la
estructura FILE del ¿chero del que se hará la lectura.
Función fwrite:
5/13/2018 Resumen asdfaasdf secuenciales - slidepdf.com
http://slidepdf.com/reader/full/resumen-asdfaasdf-secuenciales 5/24
Sintaxis: size t fwrite(void *puntero, size t tamaño, size t nregistros, FILE*¿chero);Esta función también pensada para trabajar con registros de longitudconstante y forma pareja con fread. Es capaz de escribir hacia un ¿chero uno ovarios registros de la misma longitud almacenados a partir de una dirección dememoria determinada. El valor de retorno es el número de registros escritos, noel número de bytes. Los parámetros son:
Un puntero a la zona de memoria donde se almacenaran los datos leidos, eltamaño de cada registro, el número de registros a leer y un puntero a laestructura FILE del ¿chero del que se hará la lectura.Función fprintf:
Sintaxis: int fprintf(FILE *¿chero, const char *formato, ...); La función fprintf
funciona igual que printf en cuanto a parámetros, pero la salida se dirige a un
¿chero en lugar de a la pantalla.
Función fscanf:
Sintaxis: int fscanf(FILE *¿chero, const char *formato, ...);La función fscanf
funciona igual que scanf en cuanto a parámetros, pero la entrada se toma deun ¿chero en lugar del teclado.
Función ush:
Sintaxis: int ush(FILE *¿chero);Esta función fuerza la salida de los datos
acumulados en el bu er de salida del ¿chero. Para mejorar las prestaciones del
manejo de ¿cheros se utilizan bu ers, almacenes temporales de datos
en memoria, las operaciones de salida se hacen a través del bu er, y solo
cuando el bu er se llena se
realiza la escritura en el disco y se vacia el bu er. Enocasiones nos hace
falta vaciar ese bu er de un modo manual, para eso sirve esta función. El valor
de retorno es cero si la función se ejecutó con éxito, y EOF si hubo algún error.
El parámetro de entrada es un puntero a la estructura FILE del ¿chero del que
se quiere vaciar el bu er. Si es NULL se hará el vaciado de todos los ¿cheros
abiertos. Funciones C espec¿cas para ¿cheros de acceso aleatorio
Función fseek:
Sintaxis: int fseek(FILE *¿chero, long int desplazamiento, int origen);Esta
función sirve para situar el cursor del ¿chero para leer o escribir en el lugar
deseado. El valor de retorno es cero si la función tuvo éxito, y un valor distinto
de cero si hubo algún error. Los parámetros de entrada son: un puntero a una
estructura FILE del ¿chero en el que queremos cambiar el cursor de
lectura/escritura, el valor del desplazamiento y el punto de origen desde el que
se calculara el desplazamiento. El parámetro origen puede tener tres posibles
valores: SEEK SET el desplazamiento se cuenta desde el principio del ¿chero.
El primer byte del ¿chero tiene un desplazamiento cero. SEEK
5/13/2018 Resumen asdfaasdf secuenciales - slidepdf.com
http://slidepdf.com/reader/full/resumen-asdfaasdf-secuenciales 6/24
CUR el desplazamiento se desde la posición actual del cursor. SEEK END el
desplazamiento se cuenta desde el ¿nal del ¿chero.
Función ftell:
Sintaxis: long int ftell(FILE *¿chero);La función ftell sirve para averiguar la
posición actual del cursor de lectura escritura de un ¿chero. El valor de retornoserá esa posición, o -1 si hay algún error. El parámetro de entrada es un
puntero a una estructura FILE del ¿chero del que queremos leer la posición del
cursor de lectura escritura.
5/13/2018 Resumen asdfaasdf secuenciales - slidepdf.com
http://slidepdf.com/reader/full/resumen-asdfaasdf-secuenciales 7/24
Sintaxis lenguaje c#
using System;
using System.Text;using System.IO;
namespace Test_TextFiles
{
class Program
{
static void Main(string[] args)
{
try
{
TextReader trs = new StreamReader(@"C:\test.txt");
//Lectura de todo el texto del archivo
//Console.WriteLine(trs.ReadToEnd());
//o lectura secuencial
while (trs.Peek()>=0 )
{
Console.WriteLine(trs.ReadLine());
}
trs.Close();
}
catch (Exception e)
{
Console.WriteLine(e.Message);
}
Console.WriteLine("Presione cualquier tecla para continuar...");
Console.ReadKey();
}
}
}
5/13/2018 Resumen asdfaasdf secuenciales - slidepdf.com
http://slidepdf.com/reader/full/resumen-asdfaasdf-secuenciales 8/24
Manejo de archivos secuenciales en php
Sintaxis básica para php
Hasta el momento almacenamos datos en constantes, variables y arreglos estealmacenamiento es temporal y se pierde cuando termina la ejecución del
programa. La solución computacional es almacenar dichos datos en una fuentede almacenamiento secundario como por ejemplo un disco duro o pendriveentre otros medios a fin de que persistan aun después de la ejecución delprograma que los crea y puedan ser usados inclusive por otros programas.
Para lograr esto los datos se almacenan en un recipiente llamado archivo, elprocesamiento de archivos es una herramienta invaluable de programación.Existen diversos tipos de archivos y su descripción escapa del alcance de estecurso.
Sin embargo, mis caros y estimados lectores simplemente cualquier cosaalmacena en su disco duro o en su pendrive es un archivo.
Los archivos que PHP pueden ser secuenciales y binarios. Los archivossecuenciales son archivos de texto y los binarios pueden almacenar gráficos ydiversos formatos de información. Básicamente responden a las siguientesoperaciones básicas:
y abrir
y borrar
y cerrar
y copiar
y escribir
y leer
y renombrar
Desde las operaciones básicas como copiar, mover y eliminar, hastaoperaciones que exigen una cierta complejidad son requeridas para laconfiguración de páginas Web.
Función Descripción Sintaxis
copy Copia un archivo copy($origen, $destino)
renameCambia el nombre delarchivode $antes a $después
rename($antes, $después)
un link Borra el archivo un link($archivo)
5/13/2018 Resumen asdfaasdf secuenciales - slidepdf.com
http://slidepdf.com/reader/full/resumen-asdfaasdf-secuenciales 9/24
Manejo de imágenes
A continuación se presentan dos ejemplos, para mostrar la totalidad de lasimágenes de una carpeta.
E jemplo:
y La función PHP opendir() se encarga de habilitar una ruta a un subdirectorio.
y La función readdir() se encarga de leer un archivo o subdirectorio.
y strlower() convierte el contenido de una cadena a minúscula.
y substr() extrae una subcadena de una cadena, en este caso por ser el
parámetro negativo extrae los últimos cuatro caracteres (línea 10). El objetivo
es extraer la extensión del archivo.
y closedir() cierra la ruta al subdirectorio.
<?php if ($gestor = opendir ('../imagenes')) {// Abre un gestor de directoriosecho "<table border=1 align='center'>";echo "<tr>";$i=0;while (false !== ($archivo = readdir ($gestor))) {//readdir: Lee un elemento del directorio//$gestor abierto previamente//con opendir y desplaza el puntero al elemento
siguienteif ($archivo != "." and $archivo != "..") {//checa que no sea subdirectorio$extensión = strtolower (substr ($archivo, -4));//strlower pasa a minúscula una cadena en este caso//los 4 últimos caracteres//de la cadenaif (($extension == '.jpg') or ($extension == '.gif')
or ($extension == '.png')) {if ($i==4) {// Cuatro imagenes por renglón
$i=0;echo "</tr>";
echo "<tr>";}$i++;echo "<td>";echo "<a href='../imagenes/$archivo'>";echo "<img src='../imágenes/$archivo'";echo "border='0' ></a>";echo "</td>";
}
5/13/2018 Resumen asdfaasdf secuenciales - slidepdf.com
http://slidepdf.com/reader/full/resumen-asdfaasdf-secuenciales 10/24
}}echo "</tr>";echo "</table>";closedir ($gestor); //Cierra el gestor
}
?>
E jemplo:
y La función glob() realiza una búsqueda por todos los nombres de ruta que
coincidan con cierto patrón. En este caso con los gráficos válidos para HTML.
y sort() ordena los nombres de los archivos encontrados.
y el ciclo foreach recorre el arreglo de archivos.
<?phpecho "<table border=1 align='center'>";
echo "<tr>";$i = 0;//carga las imágenes de la carpeta//La función glob() realiza una búsqueda por todos los
nombres//de ruta que coincidan con patrón$ruta = "../imágenes/";$imágenes = glob($ruta . "{*.jpg, *.gif, *.png}",
GLOB_BRACE);sort($imagenes);
//Recorre el vectorforeach($imagenes as $foto){if ($i==4) {
$i=0;echo "</tr>";echo "<tr>";
}$i++;echo "<td><a href='".$foto."'><img
src='".$foto."/></a></td>";}echo "</tr>";
echo "</table>";?>
5/13/2018 Resumen asdfaasdf secuenciales - slidepdf.com
http://slidepdf.com/reader/full/resumen-asdfaasdf-secuenciales 11/24
Para el siguiente ejemplo usaremos 4 funciones básicas de manipulación dearchivos
Función Descripción Sintaxis
filesize Obtiene el tamaño del archivo filesize($archivo);
fopen Abre un archivo y le asigna unidentificador id.
$id= fopen($archivo,$modo);
fpassthru
Lee completamente el archivo y lomuestra. El cierre del archivo esautomático al terminar el volcadodel archivo.
fpassthru($id);
header
Permite modificar las cabeceras queenvía el servidor al navegador.Estas cabeceras, que siguen elprotocolo HTTP, es la primerainformación que recibe el navegador en cada petición que realiza, antesque el contenido del archivo.
header ("mensaje");
E jemplo: Mostrar una imagen
Fopen además de abrir un archivo, obtiene un apuntador a sucontenido. fopen solo debe usarse para abrir un archivo cuyo contenido vamos
a manipular. Si únicamente queremos recuperar su contenido (y por ejemplomostrarlo en pantalla), hay otras funciones más adecuadas.
Los modos en los que se puede abrir un archivo son:
y r Sólo lectura. El puntero al comienzo del archivo
y r+ Lectura y escritura; apuntador al inicio del archivo
y w Sólo escritura, si no existe el archivo lo crea, si existe lo convierte en archivo
de longitud cero y el apuntador se coloca en el inicio (sobreescribe el contenido,
vamos)
y w+ Lectura y escritura, si existe lo trunca a tamaño cero, y se sitúa al inicio, si
no existe lo crea
y a Modo append, sólo escritura, si no existe lo crea. Si existe, el apuntador se
coloca al final del archivo (listo para escribir a continuación del contenido)
y a+ Modo append, lectura y escritura, si no existe lo crea; apuntador al final del
archivo
y b es un flag adicional a cualquiera de los anteriores que indica que vamos a
operar sobre un archivo binario (en contraposición a archivo de texto) como una
5/13/2018 Resumen asdfaasdf secuenciales - slidepdf.com
http://slidepdf.com/reader/full/resumen-asdfaasdf-secuenciales 12/24
imagen o un sonido. En algunos sistemas operativos como linux no existe esta
diferencia así que el indicador b será ignorado.Las líneas 7 y 8 envían cabeceras HTTP para indicar el tamaño y formato delarchivo.
fpassthru (línea 11) hace un volcado del archivo previamente definido en lalínea 4.
<?php // Abree el archivo en modo binario$imagen = '../imagenes/Shakira02.png';$id = fopen($imagen, 'rb');
// Envía las cabecerasheader ('Content-Type: image/png');header ('Content-Length: ' . filesize($imagen));
// imprime el archivo y detiene el scriptfpassthru($id);exit;
?>
Una versión reducida de este código lo podemos encontrar en:
La función file_get_contents (línea 4) permite leer el contenido de un archivoen una cadena.
<?
header ( "Content-type: image/png");$archivo = '../imágenes/Shakira02.png';$imagen = file_get_contents($archivo);echo $imagen;
?>
Leer un archivo de texto
y En la línea 2 se genera un apuntador al archivo alumnos.txt
y La función feof (línea 4) comprueba si se encuentra el fin del archivo
y La función fgets lee el contenido de un archivo hasta encontrar el fin de línea
(línea 4)y fclose (línea 5) cierra el apuntador
<?php $archivo = fopen('0310alumnos.txt', 'r');//Imprime una línea hasta que el//final del archivo es encontradowhile(!feof ($archivo)) {
echo fgets($archivo)."<br />";
5/13/2018 Resumen asdfaasdf secuenciales - slidepdf.com
http://slidepdf.com/reader/full/resumen-asdfaasdf-secuenciales 13/24
}fclose($archivo);
?>
Otra forma de hacerlo es mediante la función fread (línea 6) la cual lee elcontenido de un archivo.
<?php // obtiene el contenido de un archivo en//una cadena$archivo = '0310alumnos.txt';$id = fopen($archivo, 'r');$contenido = fread($id, filesize($archivo));echo $contenido;fclose($id);
?>
5/13/2018 Resumen asdfaasdf secuenciales - slidepdf.com
http://slidepdf.com/reader/full/resumen-asdfaasdf-secuenciales 14/24
Archivos secuenciales en JAVA
Sintaxis básica en JAVA
Existen varias técnicas para representar y almacenar registros llamadas
organizaciones de archivos. Hay dos aspectos importantes en que difieren las
organizaciones de archivos:
La secuenciación de registros y el conjunto de operaciones para manipularlos.
La forma más sencilla de almacenar un conjunto de registros en un archivo es
mediante la organización secuencial. En este tipo de archivos, los registros son
escritos consecutivamente cuando el archivo es creado, por lo tanto, deben ser
accesados de ese modo cuando se consultan.
La característica más importante de esta técnica de organización de archivos
es que solo permite el acceso secuencial, es decir, para accesar al registro k,se deben recorrer los k-1 registros anteriores.
Esta característica impide que el archivo secuencial se use en procesos en
línea debido a que no se pueden consultar rápidamente los registros, sin
embargo, muestra buen rendimiento en procesos en lote donde se aprovecha
la capacidad para accesar al siguiente registro rápidamente. Otra ventaja de
esta organización de archivos radica en que la dirección del registro está
implícita en el sistema; es decir, no se pierden registros por la desaparición de
direcciones.
La programación orientada a objetos (POO) simula objetos reales con
equivalentes de software. Utiliza las relaciones de clase en la que sus objetos
tienen las mismas características, atributos y comportamientos.
La clave para desarrollar sistemas utilizando los conceptos de orientación a
objetos es definir los objetos que lo forman, sus atributos, sus métodos y crear
las abstracciones apropiadas para ellos (clases), separando la implementación
interna de su comportamiento externo. La abstracción consiste en ocultar los
detalles irrelevantes del objeto, esto provoca que el usuario maneje los datos
del objeto sin necesidad de conocer los detalles.
La POO es una técnica de programación sumamente eficiente que permite dar
versatilidad a los sistemas y facilitar la codificación para los programadores.
En la aplicación de archivos secuenciales, fácilmente se pueden agregar otros
archivos sin necesidad de reprogramar las subrutinas o agregar nuevos
procedimientos.
5/13/2018 Resumen asdfaasdf secuenciales - slidepdf.com
http://slidepdf.com/reader/full/resumen-asdfaasdf-secuenciales 15/24
Para crear otros archivos secuenciales con las mismas características, basta
declarar otros objetos de la misma clase con la ruta y nombre de los archivos
deseados. P. ejem. Si se deseara un archivo secuencial de Secretarias y otro
de Obreros, se hace la declaración correspondiente de los objetos y se
encuentran listos para ser utilizados.
1 // Una GUI reutilizable para los ejemplos de este capítulo.
2 import java.awt.*;
3 import javax.swing.*;
4 public class IUBanco extends JPanel
5 {
6 // texto de las etiquetas para la GUI
7 protected final static String nombres[] = { "Número de cuenta",
8 "Primer nombre", "Apellido", "Saldo", "Monto de la transacción" };
9
10 // componentes de GUI; protegidos para el acceso futuro de las subclases
11 protected JLabel etiquetas[];12 protected JTextField campos[];
13 protected JButton hacerTarea1, hacerTarea2;
14 protected JPanel panelInternoCentro, panelInternoSur;
15
16 protected int tamanio; // número de campos de texto en la GUI
17
18 // constantes que representan a los campos de texto en la GUI
19 public static final int CUENTA = 0, PRIMERNOMBRE = 1, APELLIDO = 2,
20 SALDO = 3, TRANSACCION = 4;
2122 // Configurar GUI. El argumento miTamanio del constructor determina el
número de
23 // filas de componentes de GUI.
24 public IUBanco( int miTamanio )
25 {
26 tamanio = miTamanio;
27 etiquetas = new JLabel[ tamanio ];
28 campos = new JTextField[ tamanio ];
29
30 // crear etiquetas31 for ( int cuenta = 0; cuenta < etiquetas.length; cuenta++ )
32 etiquetas[ cuenta ] = new JLabel( nombres[ cuenta ] );
33
34 // crear campos de texto
35 for ( int cuenta = 0; cuenta < campos.length; cuenta++ )
36 campos[ cuenta ] = new JTextField();
37
5/13/2018 Resumen asdfaasdf secuenciales - slidepdf.com
http://slidepdf.com/reader/full/resumen-asdfaasdf-secuenciales 16/24
38 // crear panel para distribuir etiquetas y campos
39 panelInternoCentro = new JPanel();
40 panelInternoCentro.setLayout( new GridLayout( tamanio, 2 ) );
41
42 // adjuntar etiquetas y campos a panelInternoCentro
43 for ( int cuenta = 0; cuenta < tamanio; cuenta++ ) {44 panelInternoCentro.add( etiquetas[ cuenta ] );
45 panelInternoCentro.add( campos[ cuenta ] );
46 }
47
48 // crear botones genéricos; sin etiquetas ni manejadores de eventos
49 hacerTarea1 = new JButton();
50 hacerTarea2 = new JButton();
51
52 // crear panel para distribuir los botones y adjuntarlos
53 panelInternoSur = new JPanel();
54 panelInternoSur.add( hacerTarea1 );
55 panelInternoSur.add( hacerTarea2 );
56
57 // establecer esquema de este contenedor y adjuntarle los paneles
58 setLayout( new BorderLayout() );
59 add( panelInternoCentro, BorderLayout.CENTER );
60 add( panelInternoSur, BorderLayout.SOUTH );
61
62 validate(); // validar esquema
63
64 } // fin del constructor
65
66 // devolver referencia al botón de tarea genérico hacerTarea1
67 public JButton obtenerBotonHacerTarea1()
68 {
69 return hacerTarea1;
70 }
71
72 // devolver referencia al botón de tarea genérico hacerTarea2
73 public JButton obtenerBotonHacerTarea2()
74 {75 return hacerTarea2;
76 }
77
78 // devolver referencia al arreglo campos de objetos JTextField
79 public JTextField[] obtenerCampos()
80 {
81 return campos;
5/13/2018 Resumen asdfaasdf secuenciales - slidepdf.com
http://slidepdf.com/reader/full/resumen-asdfaasdf-secuenciales 17/24
82 }
83
84 // borrar el contenido de los campos de texto
85 public void borrarCampos()
86 {
87 for ( int cuenta = 0; cuenta < tamanio; cuenta++ )88 campos[ cuenta ].setText( "" );
89 }
90
91 // establecer valores de los campos de texto; lanzar
IllegalArgumentException si
92 // hay un número incorrecto de objetos String en el argumento
93 public void establecerValoresCampos( String cadenas[] )
94 throws IllegalArgumentException
95 {
96 if ( cadenas.length != tamanio )
97 throw new IllegalArgumentException( "Debe haber " +
98 tamanio + " objetos String en el arreglo" );
99
100 for ( int cuenta = 0; cuenta < tamanio; cuenta++ )
101 campos[ cuenta ].setText( cadenas[ cuenta ] );
102 }
103
104 // obtener arreglo de objetos String con el contenido actual de los campos
de texto
105 public String[] obtenerValoresCampos()
106 {
107 String valores[] = new String[ tamanio ];
108
109 for ( int cuenta = 0; cuenta < tamanio; cuenta++ )
110 valores[ cuenta ] = campos[ cuenta ].getText();
111
112 return valores;
113 }
114
115 } // fin de la clase IUBanco
5/13/2018 Resumen asdfaasdf secuenciales - slidepdf.com
http://slidepdf.com/reader/full/resumen-asdfaasdf-secuenciales 18/24
Archivos secuenciales en XML
Sintaxis básica para XML
Se refiere al procesamiento de los registros, no importa el orden en que se
haga, para eso los registros están organizados en forma de una lista y
recuperarlos y procesarlos uno por uno de principio a fin.
Rudimentos de los archivos Secuenciales; dependiendo del dispositivo de
almacenamiento utilizado el archivo se puede mostrar el usuario como si fuera
un sistema secuencial.
Al finalizar un archivo secuencial se denota con una marca de fin de archivo.
(End end-of-file)
El usuario de un archivo secuencial puede ver los registros en un orden
secuencial simple.
La única forma de recuperar registros es comenzar al principio y extraerlos enel orden contemplado.
< xml="true" ns="urn:schemas-microsoft-com:office:office" prefix="o"
namespace="">
Los archivos secuenciales se denominan de esta manera por que la forma de
escribir y leer los datos en un archivo es, desde el principio hasta el fin del
archivo, es decir, si yo quisiera acceder a un determinado dato del archivo y
este dato se encuentra en la mitad del archivo, para llegar a ese dato necesito
pasar por todos los demás datos, de forma secuencial. Por lo general se suelen
utilizar los archivos secuenciales, para trabajar con archivos que contenganuna estructura de datos no muy compleja.
Append: esta sentencia se utiliza para agregar información a un archivo de
texto.
Input: la sentencia Input se utiliza para leer datos de un archivo de texto, lee
todo el contenido del archivo de una sola vez.
Output: esta sentencia se utiliza para crear un archivo de texto y grabar datos.
sentencia Write: escribe datos en un archivo separados por comas.
Line Input: lee un archivo de texto línea por línea.
Print : para escribir datos en archivos de texto.tos en archivos de texto.
5/13/2018 Resumen asdfaasdf secuenciales - slidepdf.com
http://slidepdf.com/reader/full/resumen-asdfaasdf-secuenciales 19/24
EJEMPLO:
LO QUE H ACE ESTE EJEMPLO ES LEER UN ARCHIVO DE TEXTO Y
CUENTA LAS LINEAS DE EL MISMO TEXTO:
*Ponemos un command Button al formulario y a este le agregamos el codigo
así:
*Le ponemos otro command Button que es el de salir con su respectivo codigo
que es end
Este es el codigo que ponemos en el command contar:
Public Funtion Contar_Lineas (ByVal srtTextFile As string) As Long< xml="true"
ns="urn:schemas-microsoft-com:office:office" prefix="o" namespace="">
Dim f As Integer Dim lineas As Long
Dim srt_Linea As String
Numero de archive libre
F = FreeFile
Abre el archive de texto línea por línea hasta el final
Do
Lee una linea
Line input #f, srt_lineaIncrementa la cantidad de líneas leídas
Líneas = líneas + 1
Leerá hasta que llegue al fin de archivo
Loop While not EOF(F)
Cierra el archive de texto abierto
Close #f
Retorna a la función el número de líneas del fichero
5/13/2018 Resumen asdfaasdf secuenciales - slidepdf.com
http://slidepdf.com/reader/full/resumen-asdfaasdf-secuenciales 20/24
Contar_lineas = lineas
End Function
Private Sub Command1_Click( )
Dim Path As String
Path = InputBox(³Ingrese la ruta de un archivo de texto´,_´contar líneas´)If Path = vbNullString Then Exit sub
MsgBox ³cantidad de líneas : ³& contra_lineas(path)
End Sub
5/13/2018 Resumen asdfaasdf secuenciales - slidepdf.com
http://slidepdf.com/reader/full/resumen-asdfaasdf-secuenciales 21/24
Archivos secuenciales en Delphi
Sintaxis básica en Delphi
La creación de un archivo secuencial incluye la escritura de registros en una
secuencia deseada dentro del medio de almacenamiento. La creación de un
archivo secuencial de transacciones incluye la tarea de recolectar datos,convertir los datos a una forma legible para la máquina, editar los datos,
convertir los movimientos rechazados y ordenar los datos editados.
Es un sencillo ejemplo que te ayudará a entender cómo se manejan los archivos secuenciales en Delphi.
Aquí está el codigo fuente:
PLAIN TEXT DELPHI: 1. unit Unit1;2. 3. interface 4.
5. uses 6. Windows, Messages, SysUtils, Variants, Classes, Graphics,
Controls, Forms,7. Dialogs, StdCtrls;8. 9. type 10. TForm1 = class(TForm) 11. Memo: TMemo;12. archivo: TEdit;13. Button1: TButton;14. Button2: TButton;15. Button3: TButton;16. Button4: TButton;17. Label1: TLabel;
18. Label2: TLabel;19. Label3: TLabel;20. Label4: TLabel;21. Label5: TLabel;22. Label6: TLabel;23. letras: TLabel;24. digitos: TLabel;25. blancos: TLabel;26. caracteres: TLabel;27. consonantes: TLabel;28. vocales: TLabel;
29. procedure Button4Click(Sender: TObject);30. procedure Button3Click(Sender: TObject);31. procedure Button1Click(Sender: TObject);
32. procedure Button2Click(Sender: TObject);33. private
34. { Private declarations }
35. public
36. { Public declarations }
37. end;38. 39. var 40. Form1: TForm1;41. 42. implementation
5/13/2018 Resumen asdfaasdf secuenciales - slidepdf.com
http://slidepdf.com/reader/full/resumen-asdfaasdf-secuenciales 22/24
43. 44. {$R *.dfm} 45.
46. procedure TForm1.Button4Click (Sender: TObject);47. begin
48. form1.close 49. end;
50. 51. procedure TForm1.Button3Click (Sender: TObject);52. begin
53. archivo.Text:='';54. letras.caption:='';55. digitos.caption:='';56. blancos.caption:='';57. caracteres.caption:='';58. vocales.caption:='';59. consonantes.caption:='';60. memo.Text:='';61. memo.SetFocus;62. end;
63. 64. procedure TForm1.Button1Click (Sender: TObject);65. begin
66. memo.Lines.LoadFromFile(archivo.text);67. end;68. 69. procedure TForm1.Button2Click (Sender: TObject);70. var
71. l,d,b,v,c,ce,a,band:integer ;72. x:char ;73. begin
74. l:=0;
75. d:=0;
76. b:=0;
77. v:=0;
78. c:=0;
79. ce:=0;
80. a:=0;81.
82. while a<>length(memo.Text) do 83. begin
84. band:=0;
85. a:=a+1;86. x:=memo.text[a];87. 88. if x in ['A'..'Z','a'..'z','ñ','Ñ','á','é','í','ó','ú','Á','É','Í','Ó','Ú'] then 89. begin
90. l:=l+1;91. band:=1;92. end;93. 94. if x in ['0'..'9'] then 95. begin
96. d:=d+1;97. band:=1;98. end;99.
5/13/2018 Resumen asdfaasdf secuenciales - slidepdf.com
http://slidepdf.com/reader/full/resumen-asdfaasdf-secuenciales 23/24
100. if x=' ' then 101. begin
102. b:=b+1;103. band:=1;104. end;105. 106.
if x in ['a','e','i','o','u','A','E','I','O','U','á','é','í','ó','ú','Á','É','Í','Ó','Ú'] then 107. begin
108. v:=v+1;109. band:=1;110. end;111. 112. if band=0 then
113. ce:=ce+1;114. 115. end;116.
117. letras.caption:=inttostr (l);118. digitos.caption:=inttostr (d);
119. blancos.caption:=inttostr (b);120. vocales.caption:=inttostr (v);121. consonantes.caption:=inttostr (l-v);122. caracteres.caption:=inttostr (ce);123. end;124.
125. end.
5/13/2018 Resumen asdfaasdf secuenciales - slidepdf.com
http://slidepdf.com/reader/full/resumen-asdfaasdf-secuenciales 24/24
Fuentes:http://archivosecuencial.blogspot.com/2009/09/6-archivos-secuenciales-en-java.html
http://luauf.com/2008/04/30/lectura-secuencial-de-archivos-con-c/
http://html.rincondelvago.com/ficheros-en-los-lenguajes-de-programacion.html
http://www.recursosdelweb.com/como-leer-archivos-secuenciales-en-delphi/
http://www.mitecnologico.com/Main/EstructuraArchivosOrganizacionSecuencial
http://prograweb.com.mx/pweb/0310Archivos.html
https://sites.google.com/site/natisaleja/archivossecuencialesyaleatorios