簡體   English   中英

嘗試從文件讀取。 引發異常

[英]Trying to read from a file. Throws an exception

我試圖從包含單個垂直數字文件的文件中讀取數據,並用它們填充矩陣(由JTextField組成),但是當我嘗試set方法時,程序在更改為第二行后引發異常

for(int a=0; a < i; a++) { 
    for(int b=0; b < i; b++){
        // x = raf.readLine();
        matrix[a][b].setText(raf.readLine());
    }
}

您可能想要更像下面的示例,並為WIDTHHEIGHT使用一些合適的值。

for (int row = 0; row < HEIGHT; row++) {
    for (int col = 0 ; col < WIDTH; col++) {
        matrix[row][col].setText(raf.readLine());
    }
}

您不應該從GUI類讀取文件。 嘗試通過創建用於讀取文本文件的專用類來分離關注點。 也許讓您的文件閱讀器類返回一行的Iterator<String> 現在,在單元測試中測試文件閱讀器類,並確保其正確顯示行。

然后執行以下操作:

Iterator<String> lines = yourHelperClass.getLines()
for(int a=0; a < i; a++) { 
    for(int b=0; b < i; b++){
        if(!lines.hasNext()){
            // not enough lines, probably throw an Exception here
        }
        matrix[a][b].setText(lines.next());
    }
}

這樣一來,找出真正出問題的地方將容易得多。

推薦閱讀: 耦合和內聚:OO編程的兩個基石

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM