2013-05-18 67 views
1

我有一些問題,我的代碼行號閱讀器

window.videoInfo.addActionListener(new ActionListener() { 

    public void actionPerformed(ActionEvent e) { 

    try { 

    URL url = new URL(window.videoInput.getText()); 
    URLConnection con = url.openConnection(); 

    LineNumberReader in = new LineNumberReader(new InputStreamReader(con.getInputStream())); 
    in.setLineNumber(1523); 
    in.getLineNumber(); 

     System.out.print(in.readLine()); 

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

    } 

我試圖顯示來自網站的特定行。 但是,如果我按下按鈕它總是顯示第一行。 即使我將行號設置爲1523.

回答

1

setLineNumber(1523)只使行號返回getLineNumber()1523開始。它不會跳過1523行。要跳過1523線,你需要做的:

for(int i = 0; i < 1523; i++) 
    in.readLine(); 
+0

是否有我的問題的解決方案? – Brokenwings

+0

謝謝。那麼我得到的輸出是奇怪的..線不符合我想要的線。還添加getLineNumber作爲輸出,所以我可以看到該程序是否正在讀取正確的行。是的,它確實讀取了正確的行,但輸出完全是diffrend = s – Brokenwings

+0

如果您想讀取第1523行,則需要跳過1522行,而不是1523行。 – johnchen902

0

呀,用途:

int skippedLines = 1523; 
LineNumberReader reader = new LineNumberReader(new FileReader(new File("file.txt"))); 
reader.skip(skippedLines);