2017-04-21 1 views
0

Je suis presque à travers avec cette affectation mais je continue à obtenir l'erreur "unreported exception java.io.IOException; must be caught or declared to be thrown" Suis-je écris mon code dans le désordre ou suis-je manquer un morceau de code? Merci pour votre temps!ERREUR: exception non signalée java.io.IOException; doit être attrapé ou déclaré être jeté

import java.io.*; 
import java.util.*; 
import java.text.*; 

public class database1 { 

    static Scanner console = new Scanner(System.in); 

    public static void main(String[] args) throws FileNotFoundException { 
     String empnumber; 
     String firstname; 
     String lastname; 
     String city; 
     String state; 
     String zipcode; 
     String jobtitle; 
     int salary; 
     int max = 200000; 
     int counter = 0; 

     FileWriter ryyt = new FileWriter("c:\\EmployeeData.txt"); 

     BufferedWriter out = new BufferedWriter(ryyt); 

     while (counter < 9) { 
      System.out.print("Enter the employee number ...... "); 
      empnumber = console.next(); 

      System.out.print("Enter employee's first name .... "); 
      firstname = console.next(); 

      //firstname = Character.toUpperCase(firstname.charAt(0)) + 
      firstname.substring(1); 

      System.out.print("Enter employee's last name ..... "); 
      lastname = console.next(); 
      lastname = Character.toUpperCase(lastname.charAt(0)) 
        + lastname.substring(1); 

      System.out.print("Enter employee's city .......... "); 
      city = console.next(); 
      city = Character.toUpperCase(city.charAt(0)) + city.substring(1); 

      System.out.print("Enter employee's state ......... "); 
      state = console.next(); 
      String upperstate = state.toUpperCase(); 

      System.out.print("Enter employee's zip code ...... "); 
      zipcode = console.next(); 

      System.out.print("Enter employee's job title ..... "); 
      jobtitle = console.next(); 
      jobtitle = Character.toUpperCase(jobtitle.charAt(0)) 
        + jobtitle.substring(1); 

      System.out.print("Enter employee's salary ........ "); 
      salary = console.nextInt(); 

      while (salary > max) { 
       if (salary > max) { 
        System.out.println(
          "Salary is over the maxium allowed, re-enter please ..."); 
        System.out.print("Enter employee's salary ........ "); 
        salary = console.nextInt(); 
       } else { 
        System.out.println("Thank you please enter the next employee!"); 
       } 
      } 

      System.out.println(); 

      out.write(empnumber + ","); 
      out.write(firstname + ","); 
      out.write(lastname + ","); 
      out.write(city + ","); 
      out.write(upperstate + ","); 
      out.write(zipcode + ","); 
      out.write(jobtitle + ","); 
      out.write(salary + ","); 
      out.newLine(); 

      counter = counter + 1; 
     } 

     out.close(); 
    } 
} 
+0

s'il vous plaît apprendre à accepter la réponse, non seulement prendre et allez ... J'ai déjà répondu à votre question ici http://stackoverflow.com/questions/43527657/file-writer-do-while-errors/43529361#43529361 – Yahya

+0

@John La question vous mentionnez semble être supprimé. – ventiseis

+0

@ventiseis Il a posté une question avec des codes pleins d'erreurs, provoquant beaucoup d'erreurs et je l'ai complètement refactorisé pour lui et l'ai exécuté sur eclipse + testé pour être sûr, puis j'ai répondu à sa question ... il l'a alors prise n'a pas accepté la question -> et maintenant il soulève la même question et quand je l'ai exposé il l'a effacé! – Yahya

Répondre

1

Vous devez utiliser lancers francs IOException comme ceci:

public static void main(String[] args) throws FileNotFoundException, IOException 

Ou vous pouvez entourer votre déclaration avec try{}catch(...){}:

try { 
    //Your code ... 
} catch (IOException ex) { 
    //exception 
} 
+0

Heh, posté la même chose: p Je vais supprimer le mien puisque le vôtre est mieux libellé – Imus

+0

haha, désolé @Imus merci pour l'édition :) –

+1

Merci .. j'ai corrigé cette erreur. Je courais programme et je reçois cette erreur: – user7671