[英]Populating a jTable using txt file
谢谢阅读。 我有一个问题,我似乎找不到使用 .txt 文件中的数据填充 jTable 的方法。
我正在使用 Netbeans 的 GUI 构建器。 不承认像 insertRow、addRow... 等方法。 在对谷歌进行一些研究之后,我尝试使用模型,但这似乎也不起作用。 或者也许我没有做对。
最后,我发现了一些东西:
public class InsertFileDataToJTable extends AbstractTableModel {
Vector data;
Vector columns;
public InsertFileDataToJTable() {
String line;
data = new Vector();
columns = new Vector();
try {
FileInputStream fis = new FileInputStream("monfichier.txt");
BufferedReader br = new BufferedReader(new InputStreamReader(fis));
StringTokenizer st1 = new StringTokenizer(br.readLine(), " ");
while (st1.hasMoreTokens())
columns.addElement(st1.nextToken());
while ((line = br.readLine()) != null) {
StringTokenizer st2 = new StringTokenizer(line, " ");
while (st2.hasMoreTokens())
data.addElement(st2.nextToken());
}
br.close();
} catch (Exception e) {
e.printStackTrace();
}
}
public int getRowCount() {
return data.size() / getColumnCount();
}
public int getColumnCount() {
return columns.size();
}
public Object getValueAt(int rowIndex, int columnIndex) {
return (String) data.elementAt((rowIndex * getColumnCount())
+ columnIndex);
}
这就是我得到的:i.imgur.com/7xqUD.jpg
现在唯一困扰我的是列的名称,我该如何更改它们?
包括一个 getColumnName 函数...
public String getColumnName(int col)
它将被称为传递列号。 基于此返回一个列名。 要么制作一个列名数组和“返回 columnName[col]”,有一个基于 col 的 case 语句,等等。
有关您可以执行的所有操作的更多详细信息,请参阅 AbstractTableModel 的 Javadocs。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.