Manuanl
class Direccion {
protected String nombre;
protected String telefono;
protected String direccion;
Direccion( String n,String t,String d ) {
nombre = n;
telefono = t;direccion = d;
}
public String getNombre() {
return( nombre );
}
public String getTelefono() {
return( telefono );
}
public String getDireccion() {
return( direccion );
}
public voidprint() {
System.out.println( nombre+"\n "+telefono+"\n "+
direccion );
}
}
class DireccionArray {
protected Direccion lista[];
final int max = 128;
int tamano = 0;
DireccionArray() {lista = new Direccion[max];
}
void printDireccion( String nombre ) {
for(int i=0; i < tamano; i++ )
{
if( lista[i].getNombre().indexOf( nombre ) != -1 )
lista[i].print();
}
}
voidaddDireccion( Direccion direccion ) {
if( tamano == max )
System.exit( 1 );
lista[tamano++] = direccion;
}
}
public class Agenda {
DireccionArray lista;
FileInputStream agFichero;
final int longLinea= 32;
public static void main( String argv[] ) {
Agenda agenda = new Agenda();
agenda.bucle();
}
Agenda() {
lista = cargaDirecciones();
}
void bucle() {
String nombre;System.out.println( "Introduzca un nombre o " );
try {
while( !"".equals( nombre = leeEntrada( System.in ) ) )
{
lista.printDireccion( nombre );
System.out.println(
"Introduzca un nombre o " );
}
} catch(Exception e )
{
;
}
}
String leeEntrada( InputStream entrada ) throws IOException {
byte chars[] = new byte[longLinea];
int contador = 0;
while( contador < longLinea &&
(chars[contador++] = (byte)entrada.read() ) != '\n' )
if( chars[contador-1] == -1 )
return( null );
return( new String( chars,0,0,contador-1 ) );
}
Direccion cargaDireccion() throws IOException {
Stringnombre = leeEntrada( agFichero );
if( nombre == null )
return( null );
String telefono = leeEntrada( agFichero );
String direccion = leeEntrada( agFichero ) + "\n " +
leeEntrada( agFichero ) +...
Regístrate para leer el documento completo.