UNIDAD 6: PROGRAMACION JAVA REGISTROS Y ARCHIVOS DIRECTOS

TEMA 5: FILTROS CONDICIONES JAVA


Otro problema similar al anterior es el de filtros o condiciones, es decir en muchas ocasiones es necesario obtener información acerca de un subconjunto de renglones de el archivo.

Por ejemplo todos los estudiantes que sean mayores de 17 años, o todos los clientes que sean de Tijuana, etc. a esto le llamamos filtros o condiciones.

Tambien se resuelve de manera similar a los de archivos secuenciales es decir usando un ciclo de lectura de todo el archivo e ir desplegando todos los registros que cumplan la condicion.

prog33.java


import java.lang.*;

import java.io.*;

class prog33 {

public static void main(String[] args) {

// creando e inicializando los campos del registro

// observar que se debe usar clases numericas apropiadas

int clave=0;

String nombre="";

int edad=0;

long tregistro=58;

long cregistros=0;

int edadtemp=0;

// creando objeto teclado y capturando clave

BufferedReader teclado = new BufferedReader(new InputStreamReader(System.in));

try{

System.out.println("edad mayor que: ");

edadtemp = Integer.parseInt(teclado.readLine());

} catch(IOException ioe) { System.out.println(ioe); }

// abriendo archivo, leyendo

try {

File arch=new File("c:\\ajava\\archivo2.dat");

RandomAccessFile archivo=new RandomAccessFile(arch,"rw");

//calulando cantidad de registros

cregistros=archivo.length()/tregistro;

for (int r=0; r < cregistros; r++)

{

clave=archivo.readInt();

//leyendo string

for(int i = 0; i < 25; ++i)

{ nombre += archivo.readChar(); };

edad=archivo.readInt();

//desplegando

if (edadtemp <= edad) { System.out.println(clave+" "+nombre+" "+edad);};

// limpiar strings o java encadena con la siguiente

nombre="";

};

archivo.close();

} catch(FileNotFoundException fnfe) { }

catch (IOException ioe) { }

} // cierra main

} // cierra clase

corrida:

image191.jpg

Como se observa es un problema y una solución similar al tema anterior de busquedas.

TAREAS PROGRAMACION JAVA

HACERLES PROGRAMAS DE FILTRADO A LOS ARCHIVOS ANTERIORES

 




Google
 
Recent changes RSS feed Creative Commons License Donate Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki
Politica de Privacidad