gpt4 book ai didi

java - JTable 的通用类

转载 作者:行者123 更新时间:2023-12-02 03:26:54 26 4
gpt4 key购买 nike

我有一个任务,但不知道如何解决。

我必须用从 .txt 文档获取的行填充 JTable。问题在于,有多个 .txt 文档,其中 JTable 的行和列或多或少。

示例:在 cars.txt 内:

id;hp;price;quantity
1;100;7000;5
4;120;20000;2
7;300;80000;3

在 bikes.txt 内

id;price;quantity;color;year
3;80;20;red;2010
5;200;40;green;2011
12;150;10;blue;2007

因此,当选择 .txt 时,将弹出一个 JDialog,其中包含一个 JTable,其中将显示数据。我认为我可以创建一个“类 Anything”,其中我有一个实例变量 String[][],我可以通过读取 .txt 来定义大小,并将数据保存在一个数组中后,我可以计算有多少行以及如何计算它有很多列,以 cars.txt 为例,它将是: String[4][3]

这是一种很好的工作方式还是有更好的方法?

感谢您的帮助:D

最佳答案

您的问题对于您具体想要做什么有点模糊。

您想简单地用给定的所有数据填充表格吗?或者您只想使用某些列?当您选择文本文件时,您是否知道它们具有哪些列名称(您是否可以对其进行硬编码)。

一个好的开始是......

已编辑这是解决方案......

    DefaultTableModel dtm = (DefaultTableModel)yourJTable.getModel(); 
// This divides your txt file to a string array divided by rows
string[] RowSplit = yourTxtFileThatYouRead.split("\n");

//this assumes that your txt file contains the column headers
dtm.setColumnHeaders(RowSplit[0].split(";"));


//Start the iteration at 1 to skip the column headers
for (int i = 1; i < RowSplit.length; ++i) {
dtm.addRow(RowSplit[i].split(//some delimeter //));

dtm.fireTableDataChanged();
<小时/>

第一部分设置列标题并允许表格列大小发生变化。

第二部分按顺序添加行。

已编辑格式已编辑以获得更好的答案

关于java - JTable 的通用类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38728466/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com