Ramirez Albarran Omar escom ipn 6SCV2

Site hosted by Angelfire.com: Build your free website today!

Práctica 4

Acceso Aleatorio

 

/*
* AccAleat.java
*
*
*/

/**
*
* @author OmarRamirezAlbarran
*/

import java.lang.*;
import java.io.*;
import java.util.*;

class Persona
{
String nom,dir;
long tel;

Persona(String n,String d,long t)
{nom=n; dir=d; tel=t; }

public int Tamaño()
{
int lcad,t;
lcad=nom.length();
t=lcad*2;
lcad=dir.length();
t=t+(lcad*2);
t=t+8;
return t;
}
public String toString()
{
return "\n\t\tNombre:"+nom+"\n\t\tDireccion:"+dir+"\n\t\tTelefono:"+tel;
}

}


public class AccAleat
{

public static void main(String [] args)
{

String nombre,direccion,nombres;
long telefono;
int tamanoReg=180,opcion=0,op=0,i=0,j=0,salir=0,indice=0;

File archivo=new File("c:\\arch.dat");
RandomAccessFile aaa=null;//archivo de acceso aleatorio

try
{
aaa=new RandomAccessFile(archivo,"rw");

do{
System.out.println("\n\t1)Agregar\n\t2)Mostrar\n\t3)Buscar\n\t4)Salir");
op=LECTURA.datoInt();

if(op==1)
{
System.out.println("INTRODUCE Nombre:");
nombre=Getdat.getCad();
System.out.println("INTRODUCE Direccion:");
direccion=Getdat.getCad();
System.out.println("INTRODUCE Telefono:");
telefono=Getdat.getLong();

Persona objeto=new Persona(nombre,direccion,telefono);

if(objeto.Tamaño()>tamanoReg)
{
System.out.println("Tamaño Excedido");
}

else
{
aaa.seek(i*tamanoReg);
aaa.writeUTF(nombre);
aaa.writeUTF(direccion);
aaa.writeLong(telefono);
i++;
}
}
j=0;

if(op==2)
{

while(true)
{
aaa.seek(j*tamanoReg);
nombre=aaa.readUTF();
direccion=aaa.readUTF();
telefono=aaa.readLong();
Persona personal= new Persona(nombre,direccion,telefono);
System.out.println(personal);
j++;
}
}

if(op==3)
{

System.out.print("NOMBRE QUE DESEA BUSCAR:");
nombres=LECTURA.datoString();
i=0;
while(true)
{
aaa.seek(i*tamanoReg);
nombre=aaa.readUTF();
direccion=aaa.readUTF();
telefono=aaa.readLong();
if(nombre.indexOf(nombres)==0)
{
Persona personas= new Persona(nombre,direccion,telefono);
System.out.println(personas);
}

i++;
}
}
}while(op!=4);

}

catch(IOException e)
{
System.out.print("Fin del archivo");
}


finally
{
try
{
if(aaa!=null)
aaa.close();
}
catch(IOException e){}


}

}
}