获取一个txt文件并插入到tableview(JavaFX)
我试图从txt文件插入到tableview,但我做不到 这是我的txt文件 aa.txt(它包含int A、int B、int F) 这是产品类别(信息部分) 这是代码中的表视图部分,但我不能继续这部分获取一个txt文件并插入到tableview(JavaFX),java,javafx,tableview,Java,Javafx,Tableview,我试图从txt文件插入到tableview,但我做不到 这是我的txt文件 aa.txt(它包含int A、int B、int F) 这是产品类别(信息部分) 这是代码中的表视图部分,但我不能继续这部分 TableColumn<Product, Integer> aColumn = new TableColumn<>("A"); aColumn.setMinWidth(100); aColumn.setCellValueFactory(new PropertyValueF
TableColumn<Product, Integer> aColumn = new TableColumn<>("A");
aColumn.setMinWidth(100);
aColumn.setCellValueFactory(new PropertyValueFactory<>("A"));
TableColumn<Product, Integer> bColumn = new TableColumn<>("B");
bColumn.setMinWidth(100);
bColumn.setCellValueFactory(new PropertyValueFactory<>("B"));
TableColumn<Product, Integer> fColumn = new TableColumn<>("F");
fColumn.setMinWidth(100);
fColumn.setCellValueFactory(new PropertyValueFactory<>("F"));
table = new TableView<>();
table.setItems(getProduct());
table.getColumns().addAll(aColumn, bColumn, fColumn);
TableColumn aColumn=新的TableColumn(“A”);
a柱设置最小宽度(100);
A列setCellValueFactory(新属性ValueFactory(“A”));
TableColumn B列=新的TableColumn(“B”);
b柱设置最小宽度(100);
B列setCellValueFactory(新属性ValueFactory(“B”);
TableColumn fColumn=新的TableColumn(“F”);
F柱设置最小宽度(100);
F列setCellValueFactory(新属性ValueFactory(“F”);
table=新的TableView();
表.setItems(getProduct());
table.getColumns().addAll(aColumn、bColumn、fColumn);
请帮助我了解此主题。您可以尝试使用
split()
方法拆分从文件中获取的数据:
拆分(字符串正则表达式)
围绕给定正则表达式的匹配项拆分此字符串
然后删除table.setItems(getProduct())代码>
并调用您刚刚创建的方法getProductsFromFile()
,因此您的代码应该如下所示:
TableColumn<Product, Integer> aColumn = new TableColumn<>("A");
aColumn.setMinWidth(100);
aColumn.setCellValueFactory(new PropertyValueFactory<>("A"));
TableColumn<Product, Integer> bColumn = new TableColumn<>("B");
bColumn.setMinWidth(100);
bColumn.setCellValueFactory(new PropertyValueFactory<>("B"));
TableColumn<Product, Integer> fColumn = new TableColumn<>("F");
fColumn.setMinWidth(100);
fColumn.setCellValueFactory(new PropertyValueFactory<>("F"));
table = new TableView<>();
getProductsFromFile();
table.getColumns().addAll(aColumn, bColumn, fColumn);
TableColumn aColumn=新的TableColumn(“A”);
a柱设置最小宽度(100);
A列setCellValueFactory(新属性ValueFactory(“A”));
TableColumn B列=新的TableColumn(“B”);
b柱设置最小宽度(100);
B列setCellValueFactory(新属性ValueFactory(“B”);
TableColumn fColumn=新的TableColumn(“F”);
F柱设置最小宽度(100);
F列setCellValueFactory(新属性ValueFactory(“F”);
table=新的TableView();
getProductsFromFile();
table.getColumns().addAll(aColumn、bColumn、fColumn);
您遇到了什么错误?getProduct()做什么?
TableColumn<Product, Integer> aColumn = new TableColumn<>("A");
aColumn.setMinWidth(100);
aColumn.setCellValueFactory(new PropertyValueFactory<>("A"));
TableColumn<Product, Integer> bColumn = new TableColumn<>("B");
bColumn.setMinWidth(100);
bColumn.setCellValueFactory(new PropertyValueFactory<>("B"));
TableColumn<Product, Integer> fColumn = new TableColumn<>("F");
fColumn.setMinWidth(100);
fColumn.setCellValueFactory(new PropertyValueFactory<>("F"));
table = new TableView<>();
table.setItems(getProduct());
table.getColumns().addAll(aColumn, bColumn, fColumn);
private void getProductsFromFile() {
try {
BufferedReader br = new BufferedReader(new FileReader(new File("path/to/file.txt"));
String line;
String[] array;
while ((line = br.readLine()) != null){
array = line.split(" ");
table.getItems().add(new Product(Integer.parseInt(array[0]), Integer.parseInt(array[1]), Integer.parseInt(array[2])));
}
br.close();
}catch (Exception ex){
ex.printStackTrace();
}
}
TableColumn<Product, Integer> aColumn = new TableColumn<>("A");
aColumn.setMinWidth(100);
aColumn.setCellValueFactory(new PropertyValueFactory<>("A"));
TableColumn<Product, Integer> bColumn = new TableColumn<>("B");
bColumn.setMinWidth(100);
bColumn.setCellValueFactory(new PropertyValueFactory<>("B"));
TableColumn<Product, Integer> fColumn = new TableColumn<>("F");
fColumn.setMinWidth(100);
fColumn.setCellValueFactory(new PropertyValueFactory<>("F"));
table = new TableView<>();
getProductsFromFile();
table.getColumns().addAll(aColumn, bColumn, fColumn);