Foros del Web » Programación para mayores de 30 ;) » Java »

Problema en ABM

Estas en el tema de Problema en ABM en el foro de Java en Foros del Web. Hola, tengo hecho un ABM y tengo un inconveniente para eliminar un registro. La aplicacion es de lo mas sencilla posible, consta de un archivo ...
  #1 (permalink)  
Antiguo 22/08/2008, 19:42
 
Fecha de Ingreso: junio-2008
Mensajes: 110
Antigüedad: 15 años, 10 meses
Puntos: 0
Problema en ABM

Hola, tengo hecho un ABM y tengo un inconveniente para eliminar un registro.
La aplicacion es de lo mas sencilla posible, consta de un archivo de texto en el cual guardo un par de strings separados por un tab. La parte de alta y listado la tengo bien, la parte de eliminacion de registros me falta extraer el string de autor para compararlo con el ingresado y de esa forma eliminarlo.
EL inconveniente lo tengo en la funcion eliminarDisco.

Posteo el codigo que tengo.

Código PHP:

import java
.io.*;


public class 
disqueria {

    
/**
     * @param args
     */
    
public static void main(String[] args) {
        
// TODO Auto-generated method stub

        
int resultado     0;
        
int num1         0;


        do {

            
num1 menuListar();

            switch(
num1) {
                case 
1:
                    
resultado agregarAutor();
                    break;
                case 
2:
                    
resultado listarDiscos();
                    break;
                case 
3:
                    
resultado buscarDisco();
                    break;
                case 
4:
                    
resultado buscarDisco();
                    break;
                case 
5:
                    
System.out.println("Ha abandonado la aplicacion con exito!");
                    
System.exit(1);
                    break;

            }

        }while(
num1 != 5);

    }

    public static 
int menuListar() {
        
int i                     0;
        
int num1                 0;
        
String inputa             "";

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

        
System.out.println("\t\t\t\tDISQUERIA");

        
System.out.println("1 - Agregar Disco.");
        
System.out.println("2 - Listar Discos.");
        
System.out.println("3 - Buscar Disco.");
        
System.out.println("4 - Eliminar Disco.");
        
System.out.println("5 - Salir.");

        try {
            do {
                
0;

                
System.out.print("\n\nIngrese opcion:");

                
inputa stdin.readLine();
                
num1 Integer.parseInt(inputa);

                if(
num1 || num1 5) {
                    
System.out.println("Debe ingresar un codigo correcto!!!");
                    
1;
                }

            }while(
== 1);

        } catch (
Exception e) {

            
System.out.println("Se ha producido un error!!!");
            
System.exit(1);

        }

        return 
num1;
    }

    public static 
int agregarAutor() {

        
String string             "";
        
InputStreamReader input = new InputStreamReader(System.in);
        
BufferedReader reader     = new BufferedReader(input);
        
int i                    1;
        
int num1                 0;
        
String inputa             "";

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

        
// ACA VA LA PARTE QUE SE AGREGA EL REGISTRO

        
try
        {
            
FileWriter fichero     = new FileWriter("disqueria.txt",true);
            
PrintWriter pw         = new PrintWriter(fichero);

            do {
                
0;

                
System.out.print("Ingrese el autor:");
                
string reader.readLine();
                
System.out.print("Ingrese el titulo del disco:");

                
string += "\t";
                
string += reader.readLine();

                
pw.println(string);

                
System.out.print("\n\nDesea agregar otro(1:si|0:no)?:");

                
inputa stdin.readLine();
                
num1 Integer.parseInt(inputa);

                if(
num1 != && num1 != 1) {
                    
System.out.println("Debe ingresar un codigo correcto!!!");

                    
System.out.print("\n\nDesea agregar otro(1:si|0:no)?:");

                    
inputa stdin.readLine();
                    
num1 Integer.parseInt(inputa);
                }

                if(
num1 == 1) {

                    
1;
                } else {

                    
0;
                }


            } while(
== 1);



            
pw.close();

        } catch (
Exception e)
        {
            
e.printStackTrace();
        }



        return 
0;
    }

    public static 
int listarDiscos() {
        
File archivo     null;
        
FileReader fr     null;

        
//ACA VA LA PARTE QUE SE LISTAN TODOS LOS DISCOS
        
try {

            
archivo = new File ("disqueria.txt");
            
String linea;

            
fr                     = new FileReader (archivo);
            
BufferedReader br     = new BufferedReader(fr);

            
System.out.println("AUTOR\tDISCO");

            while((
linea br.readLine())!= null)
                
System.out.println(linea);


            
fr.close();

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

        }


        return 
0;
    }

    public static 
int eliminarDisco() {

        
String string[]             = {};
        
String nombre                 "";
        
String autor                 "";
        
InputStreamReader input = new InputStreamReader(System.in);
        
BufferedReader reader     = new BufferedReader(input);
        
File archivo             null;
        
FileReader fr             null;
        
boolean ok                false;
        
int i                    0;

        try
        {

            
System.out.print("Ingrese el nombre del autor a eliminar:");
            
nombre reader.readLine();

            
archivo = new File ("disqueria.txt");
            
String linea;

            
fr                     = new FileReader (archivo);
            
BufferedReader br     = new BufferedReader(fr);


            while((
linea br.readLine())!= null) {

                
ok nombre.equalsIgnoreCase(autor);

                if(
ok) {
                    
string[i] = linea;
                }

                
i++;
            }

            
fr.close();

            
guardarRegistros(string);

        }
        catch(
Exception e){}

        
// ACA VA LA PARTE QUE LEE DEL ARCHIVO Y ELIMINA SI ENCONTRO


        
return 0;
    }

    public static 
int buscarDisco() {

        
String string             "";
        
InputStreamReader input = new InputStreamReader(System.in);
        
BufferedReader reader     = new BufferedReader(input);


        try
        {

            
System.out.print("Ingrese el nombre del autor a buscar:");
            
string reader.readLine();

        }
        catch(
Exception e){}

        
// ACA VA LA PARTE QUE LEE DEL ARCHIVO Y MUESTRA SI ENCONTRO

        
return 0;
    }

    public static 
void guardarRegistros(String reg[]) {
        
int i 0;
        
int cant reg.length;

        try
        {
            
FileWriter fichero     = new FileWriter("disqueria.txt");
            
PrintWriter pw         = new PrintWriter(fichero);

            while(
cant) {

                
pw.println(reg[i]);

                
i++;
            }

            
pw.close();

        } catch (
Exception e)
        {
            
e.printStackTrace();
        }

    }

Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 20:10.