[ANDROID]UnHandled Exception : java.io.IOException

  • Réponses :0
Jules Liegeois
  • Posts de Forum 1

8 juil. 2018 à 20:10:35 via site

Bonjour,

Pourquoi quand j'appelle ma fonction Pickline() une erreur apparait ? J'ai essayé de contourné avec des :

throws IOException

mais sans succés ;(

Voila le code entier si vous le souhaiter :

    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_game_started);

        TV_Phrase = (TextView) findViewById(R.id.TV_Phrase);
        BT_Repeat = (Button) findViewById(R.id.BT_Repeat);
        BT_Next = (Button) findViewById(R.id.BT_Next);

        this.speaker = new Speaker(getApplicationContext());


        TV_Phrase.setText(PickLine());  //ICI la fonction PickLine() retourne une erreur : Voir le titre
        speaker.setLanguage(Locale.FRANCE);
        speaker.speak(Phrase);

        BT_Repeat.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                speaker.stop();
                speaker.speak(Phrase);
            }
        });

        BT_Next.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                TV_Phrase.setText(PickLine());  //ICI la fonction PickLine() retourne une erreur : Voir le titre
                speaker.speak(Phrase);
            }
        });
    }

    private String PickLine() throws FileNotFoundException, IOException{
        File f = new File(getResources(R.drawable.rules)); //ICI Comment acceder a mon fichier "rules"
        FileReader fr = new FileReader (f);
        BufferedReader br = new BufferedReader(fr);

        String Phrase = br.readLine();
        while (Phrase != null)
        {
            nbligne++;
            Phrase = br.readLine();
            System.out.println(nbligne);
        }

        random = 1 + (int)(Math.random() * ((nbligne - 1) + 1));

        for (int i = 0; i < random; i++) {
            Phrase = br.readLine();
        }

        fr.close();
        br.close();

        return Phrase;
    }
}

Répondre