[英]how to import a txt file into a JTable and make the first column auto increment according to the number of lines of the file
我正在做一些 java 编码,我必须将一个文件导入到一个有 4 列的 Jtable 中,而我的文件有 3 列(由空格分隔,我需要每行的第一列自动递增,这是我的代码:
try {
FileReader files = new FileReader(file);
BufferedReader buf = new BufferedReader(files);
String line = null;
String tokens[] = null;
while ((line = buf.readLine()) != null) {
tokens = line.split("\\p{javaWhitespace}+");
//System.out.println( Arrays.toString( tokens ));
model.addRow(tokens);
}
}
只需在数据前面添加一个额外的令牌。 这是使用向量而不是数组最简单的方法。 向量中的第一项是您的行索引,下一项是从您的标记数组中填充的。 例如:
try {
FileReader files = new FileReader(file);
BufferedReader buf = new BufferedReader(files);
String line = null;
String tokens[] = null;
int count = 0;
while ((line = buf.readLine()) != null) {
tokens = line.split("\\p{javaWhitespace}+");
Vector<Object> row = new Vector<>();
row.add(count);
count++;
for (String text: tokens) {
row.add(text);
}
model.addRow(row); // add the Vector, not the tokens array
}
}
还有其他方法,包括扩展表 model 以便它自动执行此操作,这些可能需要根据您的需要完成 - 例如,如果在运行期间删除或添加一行,则重新编号的行该程序? 如果是这样,逻辑需要在表 model 内。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.