簡體   English   中英

閱讀txt並添加jtable

[英]Read txt and add in jtable

我是Java的新手,我需要創建一個程序來從txt文件讀取文本並將其放入jtable,該txt文件中的格式類似於“ b3:42”。 我需要閱讀這些內容,並將b3放在表的第一列中,然后將42放在下一列中。 你可以幫幫我嗎 ? 對不起,我的英語。

您可以參考以下代碼。

import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;
import javax.swing.*;    
public class HelloWorld{
    private static final String FILENAME = "input.txt";
     public static void main(String []args){       
        BufferedReader br = null;
        FileReader fr = null;
        try {
            fr = new FileReader(FILENAME);
            br = new BufferedReader(fr);

            String s;
            String[][] data = new String[2][2];

            br = new BufferedReader(new FileReader(FILENAME));
            int i = 0;
            while ((s = br.readLine()) != null) {
                 data[i]= s.split(":");
                i++;
            }

           String column[]={"COL1","COL2"};
            JTable jt=new JTable(data,column);    
        } catch (IOException e) {

            e.printStackTrace();

        } finally {

            try {

                if (br != null)
                    br.close();

                if (fr != null)
                    fr.close();

            } catch (IOException ex) {

                ex.printStackTrace();

            }

        }
     }
}

一些建議

您可以使用BufferedReader和相關鏈式流以這種方式逐行讀取txt文件:

public class TestSO {

    public static void main(String[] args) {


        String line = "";
        try(BufferedReader br = new BufferedReader(new InputStreamReader(new FileInputStream("yourfile.txt")))){
                while ((line = br.readLine()) != null) {

                // Process the line

                }
        } catch (FileNotFoundException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
    }
}

為了將行分成幾部分,您必須使用line.split(“:”)獲得2個標記,一個標記在冒號之前,另一個在冒號之后。

String tokens[] = line.split(":");

根據JTable文檔,您可以將JTable創建為JTable(Object [] [] rowData,Object [] columnNames)。

因此,您可以使用上面讀取和解析的標記來創建rowData數組。

然后為列名稱創建數組:

//headers for the table
String[] columns = new String[] {
    "Col1", "Col2"
};

最后,創建JTable,將包含數據和列名稱的數組傳遞給JTable:

//create table with data
JTable table = new JTable(rowData, columnNames);

暫無
暫無

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

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