Planteamiento_Ejercicio_Java

Iniciado por Tuplado, 3 Enero 2013, 00:55 AM

0 Miembros y 1 Visitante están viendo este tema.

Tuplado

Hola gente, como están y Feliz Año a todos.

Mira me gustaría que me dijeran como poder plantear este ejercicio, algunas pautas a seguir para poderlo hacer, estoy medio bloqueadillo.

PERO SÓLO PLANTEAMIENTO!! Yo quiero hacerlo, gracias.

-----------------------------------------------------------------------------------------
_Se trata de hacer una aplicación en Java que gestione los clientes de una empresa. Esos
datos, se almacenarán en un fichero serializado, denominado clientes.dat.
Los datos que se almacenarán sobre cada cliente son:
• NIF.
• Nombre.
• Teléfono.
• Dirección.
• Deuda.

_Mediante un menú se podrán realizar determinadas operaciones:
• Añadir cliente. Esta opción pedirá los datos del cliente y añadirá el registro
correspondiente en el fichero.
• Listar clientes. Recorrerá el fichero mostrando los clientes almacenados en el
mismo.
• Buscar clientes. Pedirá al usuario el nif del cliente a buscar, y comprobará si
existe en el fichero.
• Borrar cliente. Pedirá al usuario el nif del cliente a borrar, y si existe, lo borrará del
fichero.
• Borrar fichero de clientes completamente. Elimina del disco el fichero
clientes.dat
• Salir de la aplicación.

------------------------------------------------------------------------------------------

gibi77

es un simple arreglo de objetos, son 3 clases (a mi forma de hacerlo), la clase main que solo crea un objeto de la clase controladora, y esta ultima hace las instancias de la clase de la cual vas a hacer los objeros (clientes). ahora si quieres puedo darte un ejemplo  ::) pero como has dicho que aun no lo quieres, solo te dejo esa info, tienes mas dudas??

Tuplado

#2
Ejemplos sii, pero me gustaría intentarlo hacer yo, contándoles a ustedes mis posibles dudas.

De momento lo estoy intentando plantear, ya después empezaran a surgirme dudas, jejeje

Te agradezco los ejemplos gibi77

gibi77

la clase alumnos
public class Alumno {
    private String NoControl;
    private String Nombre;
    private String APaterno;
    private String AMaterno;
    private char Sexo;
    private int Edad;
   
    public void AltaAlumno(String NoControl,String Nombre,String APaterno,String AMaterno,char Sexo,int Edad){
        this.NoControl=NoControl;
        this.Nombre=Nombre;
        this.APaterno=APaterno;
        this.AMaterno=AMaterno;
        this.Sexo=Sexo;
        this.Edad=Edad;
        JOptionPane.showMessageDialog(null, "Alta con exito!");
    }

    public String getAMaterno() {
        return AMaterno;
    }

    public void setAMaterno(String AMaterno) {
        this.AMaterno = AMaterno;
    }

    public String getAPaterno() {
        return APaterno;
    }

    public void setAPaterno(String APaterno) {
        this.APaterno = APaterno;
    }

    public int getEdad() {
        return Edad;
    }

    public void setEdad(int Edad) {
        this.Edad = Edad;
    }

    public String getNoControl() {
        return NoControl;
    }

    public void setNoControl(String NoControl) {
        this.NoControl = NoControl;
    }

    public String getNombre() {
        return Nombre;
    }

    public void setNombre(String Nombre) {
        this.Nombre = Nombre;
    }

    public char getSexo() {
        return Sexo;
    }

    public void setSexo(char Sexo) {
        this.Sexo = Sexo;
    }
   
   
}



la clase que controla las altas y bajas (puedes hacerlo con frames, ahora esta con JOptionPane)
public class libreria {
   
    public void menu(){
        Alumno a [] = new Alumno[10];
        int opc=0;
        do{
            opc=Integer.parseInt(JOptionPane.showInputDialog("Que hacemos?\n1.-Alta\n2.-Baja\n3.-Buscar\n4.-Modificar\n5.-Mostrar\n6.-Salir"));
            switch(opc){
                case 1:alta(a);break;
                case 2:baja(a);break;
                case 3:buscar(a);break;
                case 4:modificar(a);break;
                case 5:mostrar(a);break;
            }
        }while(opc!=5);
    }

    private void alta(Alumno[] a) {
        int i;
        for(i=0;i<a.length;i++)
            if(a[i]==null)
                break;
       
        String NoControl=JOptionPane.showInputDialog("Dame el nunmero de control");
        String Nombre=JOptionPane.showInputDialog("Dame el nombre");
        String APaterno=JOptionPane.showInputDialog("Dame el paterno");
        String AMaterno=JOptionPane.showInputDialog("Dame el materno");
        String s=JOptionPane.showInputDialog("Dame el sexo");
        char Sexo = s.charAt(0);
        int Edad = Integer.parseInt(JOptionPane.showInputDialog("Dame la edad"));
       
        a[i]= new Alumno();
        a[i].AltaAlumno(NoControl, Nombre, APaterno, AMaterno, Sexo, Edad);
    }

    private void baja(Alumno[] a) {
       
    }

    private void buscar(Alumno[] a) {
       
    }

    private void modificar(Alumno[] a) {
       
    }

    private void mostrar(Alumno[] a) {
        String impr="NoControl\tNombre\tAPaterno\tAMaterno\tSexo\tEdad\n";
        for(int i=0;i<a.length;i++)
            if(a[i]!=null)
                impr+=a[i].getNoControl()+"\t"+a[i].getNombre()+"\t"+a[i].getAPaterno()+"\t"+a[i].getAMaterno()+"\t"+a[i].getSexo()+"\t"+a[i].getEdad()+"\n";
        JTextArea jta = new JTextArea(impr);
        JOptionPane.showMessageDialog(null, jta);
    }
   
}




la clase main
public class nose {

    /**
     * @param args the command line arguments
     */
    public static void main(String[] args) {
       libreria obj = new libreria();
       obj.menu();
       
    }
}


la clase de los archivos y las modificaciones a la clase controladora te las dejo de tarea  ::) jajaja, intenta avanzar con eso, y la parte de archivos te la soluciono despues...


gibi77 Estudiante de la Ingenieria en SIstemas Computacionales en el Istituto Tecnológico de Morelia  en 4 semestre ;D

Tuplado


Tuplado

Hola gibi77 lo único que me queda es poder buscar una línea, y borrarla.

_Osea buscar el de DNI de una línea, y borrar toda esa línea.

_Y otra cosa es el paht: para encontrar o abrir un fichero, tengo que pone toda la ubicación completa.

Te explico: 
Para abrir un fichero tengo que poner todo esto,
"C:\\Users\\pepe\\Documents\\netbeans\\archivo.txt"
pero lo que quiero es como el fichero está dentro de la carpeta del proyecto, poderla abrir desde cualquier, ordenador.

Me han dicho que con poner "archivo.txt", tengo, pero en netbeans que es el IDE que yo utilizó no me funciona.

Venga un saludo gibi77