Lettura File [RISOLTO]

di il
2 risposte

Lettura File [RISOLTO]

Salve a tutti, ho un piccolo problema
Ho un metodo che legge da file di testo delle stringhe e le utilizza poi per creare degli oggetti da inserire in un altro file.
Il mio problema è che legge una riga si e una no dai file di testo e non riesco a capire perché.

Questo è il codice, potete aiutarmi?
/**
     * Metodo che crea la lista dei mezzi disponibili
     * Il numero di mezzo creati dipende dal numero di targhe presenti nei file.
     * Il numero di mezzi Standard dipende dal file std.txt, quello dei mezzi Rapidi dal file fst.txt
     */
    private void creaGarageFile(File std, File fst, File veic)
    {
        Trasporto veicolo;
        String targa,modello="";
        double scelta_mod;
        int cargo_max = 0;
        Garage parcheggio = new Garage();
        //FileReader f;        
        //BufferedReader b;
        RandomAccessFile in;
        
        try
        {
            veic.createNewFile();
            FileOutputStream fout = new FileOutputStream(veic);
            ObjectOutputStream out = new ObjectOutputStream(fout);
            in = new RandomAccessFile(std,"r");
           /* f = new FileReader(std);
            b = new BufferedReader(f);*/
            //while(b.readLine() != null)
            while(in.readLine() != null)
            {
                scelta_mod = Math.random()*2;
                switch((int)scelta_mod)
                {
                    case 0: modello = "Auto";
                    break;
                    case 1: modello = "Furgone";
                    break;
                    case 2: modello = "Camion";
                    break;
                }
                targa = in.readLine();
                System.out.println(targa+"\n");
                veicolo = new StdTrasport(targa,modello,0);
                parcheggio.addMezzo(veicolo);
            }
            //b.close();
            in.close();
            /*f = new FileReader(fst);
            b = new BufferedReader(f);*/
            in = new RandomAccessFile(fst,"r");
            //while(b.readLine() != null)
            while(in.readLine() != null)
            {
                scelta_mod = Math.random()*2;
                switch((int)scelta_mod)
                {
                    case 0:
                    {
                        modello = "Auto";
                        cargo_max = 10;
                        break;
                    }
                    case 1:
                    {
                        modello = "Furgone";
                        cargo_max = 25;
                        break;
                    }
                    case 2: 
                    {
                        modello = "Camion";
                        cargo_max = 50;
                        break;
                    }
                }
                targa = in.readLine();
                System.out.println(targa+"\n");
                veicolo = new FastTrasp(targa,modello,0,cargo_max);
                parcheggio.addMezzo(veicolo);
            }
            in.close();
            out.writeObject(parcheggio);
            out.close();
            fout.close();
            System.out.println("File "+veic+" creato correttamente");
        }
        catch(IOException e)
        {
            e.printStackTrace();
        }
        
    }
Grazie mille in anticipo

2 Risposte

Devi accedere o registrarti per scrivere nel forum
2 risposte