Visualizzazione dei risultati da 1 a 8 su 8
  1. #1

    Errore nel metodo stampa

    Ciao a tutti ho un problema cn il metodo stampa mi da questi errori

    codice:
    errori Rubricaatestc.java:111: class, interface, or enum expected
         public static void stampa()
                       ^
    Rubricaatestc.java:115: class, interface, or enum expected
        Printwriter out=new Printwriter (file);
        ^
    Rubricaatestc.java:116: class, interface, or enum expected
        System.out.println("Inserisci il nome sul file");
        ^
    Rubricaatestc.java:117: class, interface, or enum expected
          String f=input.nextLine();
          ^
    Rubricaatestc.java:119: class, interface, or enum expected
        for(int i=0; i<array.length;i++)
        ^
    Rubricaatestc.java:119: class, interface, or enum expected
        for(int i=0; i<array.length;i++)
                     ^
    Rubricaatestc.java:119: class, interface, or enum expected
        for(int i=0; i<array.length;i++)
                                    ^
    la parte del codice in cui mi da errori è questa
    codice:
    Parte del codice
    
    public static void stampa()
      {
        try
        {
          FileWriter file=new FileWriter ("elenco.txt");
          Printwriter out=new Printwriter (file);
      
          for(int i=0; i<array.length;i++)
    {
          out.println(array[i].nome + array[i].cognome + array[i].numero"\n");
    out.println();
    }
    out.close();
        } 
        catch(IOException e) 
        {
          System.out.println("Errore" + e);
        }
        
      }
    C'è qualcuno che mi può aiutare???
    Grazie mille
    Grazie

  2. #2
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284

    Re: Errore nel metodo stampa

    Originariamente inviato da Agrigentine
    Ciao a tutti ho un problema cn il metodo stampa mi da questi errori
    C'è qualcuno che mi può aiutare???
    Il metodo che hai postato è corretto dal punto di vista della dichiarazione/struttura.

    Quando hai errori di quel tipo, molto molto probabilmente è perché nel codice che precede il metodo hai messo pochi o troppi } di chiusura. Quindi guarda il codice più sopra del metodo.

    Inoltre te lo avevo già fatto notare in un'altra discussione ... continui ad usare quel 'array' che se è ancora una variabile "locale" nel main() ovviamente non è visibile in stampa().
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  3. #3
    l'array l'ho messo in maniera corretta.adesso mi da i seguenti errori perchè ho modificato quello che ti avevo inviato poco fa e penso che i miei errori consistano nel fatto ke non so usare i blocchi catch e try
    codice:
    stampa()
                
       public static void stampa()
      { 
       
        try
        {
          FileWriter fileout =new FileWriter ("elenco.txt");
          PrintWriter out=new PrintWriter (fileout); 
        
            
        
            for(int i=0; i<array.length;i++)
          {
        out.print(array[i].getNome()+"" + array[i].getCognome() +""+ array[i].getTelefono+ "\n");
              out.println();}
          
        
        out close();
            }catch(IOException e) 
        {
          System.out.println("Errore IOException nel metodo stampa " );
        }
        
       
      
        }     
      }
    gli errori invece sono :[/CODE]
    RubricaTestc.java:137: ';' expected
    out close();
    ^
    RubricaTestc.java:138: 'catch' without 'try'
    catch(IOException e)
    ^
    RubricaTestc.java:124: 'try' without 'catch' or 'finally'
    try
    ^
    RubricaTestc.java:138: ')' expected
    catch(IOException e)
    ^
    RubricaTestc.java:138: not a statement
    catch(IOException e)
    ^
    RubricaTestc.java:138: ';' expected
    catch(IOException e)
    ^
    RubricaTestc.java:146: class, interface, or enum expected
    }
    ^
    7 errors
    >Exit code: 1[/CODE]

  4. #4
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Originariamente inviato da Agrigentine
    l'array l'ho messo in maniera corretta.
    Cioè?? L'hai messo come variabile "di classe"?? Anche se fosse (e tecnicamente quindi sarebbe visibile in stampa()) non sarebbe comunque la soluzione migliore.

    Originariamente inviato da Agrigentine
    adesso mi da i seguenti errori perchè ho modificato quello che ti avevo inviato poco fa e penso che i miei errori consistano nel fatto ke non so usare i blocchi catch e try
    Nel codice che hai appena postato, c'è un } di troppo al fondo. E in out close(); non hai messo il punto "." tra out e close. Il try/catch come struttura è corretto.


    Se tu scrivessi il codice ben spaziato e ben indentato tutti questi stupidissimi errori di sintassi li scopriresti immediatamente!!!
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  5. #5
    ho impostato bene tutto il codice ti mando solo il main perchè mi da soltanto un errore nella riga 88
    l'errore che mi da è questo
    codice:
    Errore
    RubricaTestc.java:88: cannot find symbol
    symbol  : variable getFlag
    location: class Rubricaa
                if (array[i].getFlag && array[i].nome.equals(nom))
    codice:
    Codice completo
    import java.util.*;
    import java.io.*;
    import java.io.PrintWriter;
    
    public class RubricaTestc
      {
        static Rubricaa array[]= new Rubricaa [100];
        static Scanner input=new Scanner(System.in);
        static int posizione=0;
        static boolean entra=false;
        static String buffer;
        static String nome;
        static String cognome;
        static String telefono;
    
        public static void main (String args[])
        {
    
          for(int i=0;i<array.length;i++)
          {
            array[i]=new Rubricaa();
          } 
            elenconum();
            stampa();
            inizio();
           
            for(int r=0;r<array.length;r++) // visualizza il contenuto dell'array
              { 
                System.out.println(array[r].getCognome()+" "+array[r].getNome()+" "+array[r].getTelefono());
              }
        }
        public static void elenconum() //metodo lettura file
        { 
          try
          {
            FileReader file = new FileReader("elenco.txt");
            BufferedReader in = new BufferedReader(file);
            buffer=in.readLine();
            for(int i=0; i<array.length;i++)
            {
              System.out.println(array[i].getCognome()+"" + array[i].getNome()+"" + array[i].getTelefono() +""+  "\n");
            }
          }
          catch(IOException e)
          {
          e.printStackTrace();
          }// indica la riga dove si e generata l'eccezione
          System.out.println("caricamento numeri eseguito con successo\n");
        }
        public  static void inizio()
        {
          while (!entra)
          {
            System.out.printf("Digita 1 per creare un nuovo contatto,2per trovare un contatto,3per uscire dalla Rubrica");
            int scelta =input.nextInt();
            while( scelta>3 || scelta <1)
            {
              System.out.printf("Hai inserito un numero non valido");
              scelta=input.nextInt();
              switch(scelta)
              {
                case 1:
                System.out.printf("Inserire il nome del contatto desiderato:\n");
                String no=input.nextLine();
                System.out.printf("Inserire il cognome del contatto desiderato:\n");
                String co=input.nextLine();
                System.out.printf("Inserire il numero di telefono del contatto desiderato:\n");
                String te=input.nextLine();
                for(int i=0; i<array.length;i++)
                {
                  System.out.println(array[i].getNome()+ " " + array[i].getCognome()+ " " + array[i].getTelefono() +  "\n");
                }
                System.out.printf("\nInserimento in corso....\n");
                if (!Rubricaa.controllanome(no))
                System.out.println("Nome non corretto o troppo lungo");
                else if (!Rubricaa.controllacognome(co))
                System.out.println("Cognome non corretto o troppo lungo");
                else if (!Rubricaa.controllatelefono(te))
                System.out.println("Cognome non corretto o troppo lungo");
                array[posizione] = new Rubricaa(no,co,te);
                if(posizione<=99)
                posizione++;
                break;
                case 2:
                System.out.printf("Inserisci il nome del contatto da cercare");
                String nom=input.nextLine();    
                for (int i=0; i<array.length; i++)
                if (array[i].getFlag && array[i].nome.equals(nom))
                { //mi da errore ma xke voglio che mi confronti il nome salvato cn il nome inserito se flag è false
                  System.out.printf("I dati del contatto sono"+ array[i].getNome()+"" + array[i].getCognome() +""+array[i].getTelefono()+ "\n"  );
                }else
                System.out.printf("Il contatto non è presente nella rubrica");
                break;
                case 3:
                entra=true;
                System.exit(1);
                break;
              }
            }
          }
        }  
        public static void stampa()
        { 
          try
          {
            FileWriter fileout =new FileWriter ("elenco.txt");
            PrintWriter out=new PrintWriter (fileout); 
            for(int i=0; i<array.length;i++)
            {
              out.print(array[i].getNome()+"" + array[i].getCognome() +""+ array[i].getTelefono() + "\n");
              out.println();
            }
            out.close();
          }
          catch(IOException e) 
          {
            System.out.println("Errore IOException nel metodo stampa " );
          }
        }     
      }
    Grazie!!!!

  6. #6
    HO TROVATO L'ERRORE AVEVO DIMENTICATO LE () NEL METODO GETFLAG

  7. #7
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Originariamente inviato da Agrigentine
    codice:
    Errore
    RubricaTestc.java:88: cannot find symbol
    symbol  : variable getFlag
    location: class Rubricaa
                if (array[i].getFlag && array[i].nome.equals(nom))
    getFlag è un metodo.

    Originariamente inviato da Agrigentine
    [CODE] static Rubricaa array[]= new Rubricaa [100];
    static Scanner input=new Scanner(System.in);
    static int posizione=0;
    static boolean entra=false;
    static String buffer;
    static String nome;
    static String cognome;
    static String telefono;
    Te l'ho già detto e lo ripeto: anche se metti queste variabili "di classe", non è una buona/bella soluzione. E comunque le variabili sopra nome, cognome e telefono non le stai usando .... buffer la usi assegnando in.readLine() ma poi non la usi altrove (quindi??). La variabile entra non servirebbe nemmeno "di classe".

    Insomma. Così non stai facendo una buona cosa.
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  8. #8
    Nell'esecuzione infatti non fa quello che mi dovrebbe fare!!!!
    codice:
    Esecuzione
    nullnullnull
    
    
    
    nullnullnull
    
    caricamento numeri eseguito con successo
    
    Digita 1 per creare un nuovo contatto,2per trovare un contatto,3per uscire dalla Rubrica
    mi da null null null fino alla fine della lunghezza dell'array,invece di darmi cognome, nome telefono.
    E quando digito la scelta non fa niente!!!
    Mi potresti fare qualche esempio per favore???
    Grazie

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.