jeudi 11 juin 2015

Random selected strings

I have a text file and i am trying to convert every line into an ArrayList. Then i have to take a random line from this text.file and display it on new JOptionPane. I am trying to implement it in the for-loop but it always appears only the first line from my text.file. Thank you very much and here is my code.

public void actionPerformed(ActionEvent e) {

              ArrayList<String> allQuestions = new ArrayList<String>();
        ArrayList<String> allRandomSelectedQuestions = new ArrayList<String>();
        File file = new File("C:/Users/User/Documents/NetBeansProjects/SummerExamProject/src/Questions2.txt");
        int numberOfRandomQuestions = 16;

        try {
            //Read line by line from the file  
            Scanner scan = new Scanner(file);

            while (scan.hasNextLine()) {

                String line = scan.nextLine();

    //  System.out.println(line);
         JOptionPane.showMessageDialog(null, line.replace("/", "\n"));

             scan.close();

             allQuestions.add(line); 

            }

        } 
        catch (FileNotFoundException ex) {
            ex.printStackTrace();
        }


        for(int i = 0; i < numberOfRandomQuestions; i++){
          Random randNum = new Random();

          int randQuestionIndex = randNum.nextInt(numberOfRandomQuestions); 
        String randomQuestion = allQuestions.get(randQuestionIndex); 
            allRandomSelectedQuestions.add(randomQuestion);



        }

        }



    }




Aucun commentaire:

Enregistrer un commentaire