2014-03-31 172 views
0

難以解釋問題,但生病盡我所能。基本上我想讓程序讀取文本文件的第1-6行,然後讀取第7-12行,然後讀取第13-18行。但現在不是。讀取文件中的特定行

我的輸出是這樣的:

First run

Second run

忽略左上角的數字,那只是所以我可以測試我的按鈕鎖。

我不知道該怎麼做。任何幫助將不勝感激。

import java.awt.*; 
import java.awt.event.*; 
import javax.swing.*; 
import java.awt.FlowLayout; 
import java.awt.event.ActionEvent; 
import java.awt.event.ActionListener; 
import java.io.*; 
import java.util.*; 

public class Game extends JFrame 
{ 
JLabel lblQuestion; 
JRadioButton btA; 
JRadioButton btB; 
JRadioButton btC; 
JRadioButton btD; 
JButton btLock; 
JTextField txtQuestion; 
int question = 0; 

public Game() 
{ 
    getContentPane().setLayout(null); 
    setupGUI(); 
    setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 
} 

btLock.addActionListener(new ActionListener() { 
     @Override 
     public void actionPerformed(ActionEvent e) { 
      btLock.setEnabled(false); 
      btLock.setText("Lock In"); 
      txtQuestion.setText(Integer.toString(question)); 
      try{ 
       String[] array = questions(); 
       lblQuestion.setText("<html>"+array[0]+"</html>"); 
       btA.setText(array[1]); 
       btB.setText(array[2]); 
       btC.setText(array[3]); 
       btD.setText(array[4]); 
      }catch(Exception ex){} 



      question++; 
     } 
    }); 

    setTitle("Who wants to be a millionare"); 
    setSize(570,400); 
    setVisible(true); 
    setResizable(false); 
    setLocationRelativeTo(null); 


} 

public String[] questions() throws IOException{ 
    File file = new File("questions.txt"); 
    if (!file.exists()){ 
     throw new FileNotFoundException("Could not find \"users\" file"); 
    } 
    FileReader fr = new FileReader(file.getAbsoluteFile()); 
    BufferedReader br = new BufferedReader(fr); 

    String[] array = new String[6]; 

    //I wanted this to skip the lines i dont need but i didnt work 
    for(int i = 0; (i*5) < question; i++){ 
     br.readLine(); 
    } 

    for(int i = 0; i < 5; i++){ 
     array[i] = br.readLine(); 
    } 

    br.close(); 
    return array; 
} 

public static void main(String args[]) 
{ 
    new Game(); 
} 
} 
+0

首先,確定你的代碼一切是毫無關係的問題。然後**從你的帖子中取出**。這是噪音。 –

+0

@SotiriosDelimanolis對不起,沒有注意到我真的發了多少垃圾 – Kevin

+0

現在,閱讀文件部分實際上與GUI沒有任何關係,因此創建一個專門的方法,只是執行文件閱讀。使用調試器查看您正在閱讀的內容以及發生的情況。 –

回答

0

林白癡

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

    for(int i = 0; i < 6; i++){ 
     array[i] = br.readLine(); 
    } 

完成