Sitze mal wieder vor einem Rätsel:
Versuche aus eineer CSV Datei ein TabelView zu füllen. Die Spaltenüberschriften werden in das TableView eingefügt und auch angezeigt, aber leider die Daten nicht.
Das Ergebniss sieht dann so aus:
Sollte aber mit den Daten gefüllt werden:
Wo zum G... ist mein Denkfehler?
Hier mal den Code
Versuche aus eineer CSV Datei ein TabelView zu füllen. Die Spaltenüberschriften werden in das TableView eingefügt und auch angezeigt, aber leider die Daten nicht.
Das Ergebniss sieht dann so aus:
Sollte aber mit den Daten gefüllt werden:
Wo zum G... ist mein Denkfehler?
Hier mal den Code
Code:
package application.controller;
import java.io.BufferedReader;
import java.io.File;
import java.io.FileReader;
import java.io.IOException;
import javafx.beans.property.SimpleStringProperty;
import javafx.collections.FXCollections;
import javafx.collections.ObservableList;
import javafx.fxml.FXML;
import javafx.scene.control.TableColumn;
import javafx.scene.control.TableView;
import javafx.scene.layout.AnchorPane;
public class SAPImportController {
// @FXML TableView SAPtable;
@FXML AnchorPane SAPImport;
private File csvFile;
public class Record {
private SimpleStringProperty f1,f2,f3,f4,f5,f6,f7,f8,f9,
f10,f11,f12,f13,f14,f15,f16,f17,f18,f19,
f20,f21,f22,f23,f24,f25,f26,f27,f28,f29,
f30,f31,f32,f33,f34,f35,f36,f37,f38,f39,
f40,f41,f42,f43,f44,f45,f46,f47,f48,f49,
f50,f51,f52,f53,f54,f55,f56,f57,f58,f59,
f60,f61,f62,f63,f64,f65,f66,f67,f68,f69,
f70,f71,f72,f73,f74,f75,f76,f77,f78;
public String getF1() {
return f1.get();
}
public String getF2() {
return f2.get();
}
public String getF3() {
return f3.get();
}
public String getF4() {
return f4.get();
}
public String getF5() {
return f5.get();
}
public String getF6() {
return f6.get();
}
public String getF7() {
return f7.get();
}
public String getF8() {
return f8.get();
}
public String getF9() {
return f9.get();
}
public String getF10() {
return f10.get();
}
public String getF11() {
return f11.get();
}
public String getF12() {
return f12.get();
}
public String getF13() {
return f13.get();
}
public String getF14() {
return f14.get();
}
public String getF15() {
return f15.get();
}
public String getF16() {
return f16.get();
}
public String getF17() {
return f17.get();
}
public String getF18() {
return f18.get();
}
public String getF19() {
return f19.get();
}
public String getF20() {
return f20.get();
}
public String getF21() {
return f21.get();
}
public String getF22() {
return f22.get();
}
public String getF23() {
return f23.get();
}
public String getF24() {
return f24.get();
}
public String getF25() {
return f25.get();
}
public String getF26() {
return f26.get();
}
public String getF27() {
return f27.get();
}
public String getF28() {
return f28.get();
}
public String getF29() {
return f29.get();
}
public String getF30() {
return f30.get();
}
public String getF31() {
return f31.get();
}
public String getF32() {
return f32.get();
}
public String getF33() {
return f33.get();
}
public String getF34() {
return f34.get();
}
public String getF35() {
return f35.get();
}
public String getF36() {
return f36.get();
}
public String getF37() {
return f37.get();
}
public String getF38() {
return f38.get();
}
public String getF39() {
return f39.get();
}
public String getF40() {
return f40.get();
}
public String getF41() {
return f41.get();
}
public String getF42() {
return f42.get();
}
public String getF43() {
return f43.get();
}
public String getF44() {
return f44.get();
}
public String getF45() {
return f45.get();
}
public String getF46() {
return f46.get();
}
public String getF47() {
return f47.get();
}
public String getF48() {
return f48.get();
}
public String getF49() {
return f49.get();
}
public String getF50() {
return f50.get();
}
public String getF51() {
return f51.get();
}
public String getF52() {
return f52.get();
}
public String getF53() {
return f53.get();
}
public String getF54() {
return f54.get();
}
public String getF55() {
return f55.get();
}
public String getF56() {
return f56.get();
}
public String getF57() {
return f57.get();
}
public String getF58() {
return f58.get();
}
public String getF59() {
return f59.get();
}
public String getF60() {
return f60.get();
}
public String getF61() {
return f61.get();
}
public String getF62() {
return f62.get();
}
public String getF63() {
return f63.get();
}
public String getF64() {
return f64.get();
}
public String getF65() {
return f65.get();
}
public String getF66() {
return f66.get();
}
public String getF67() {
return f67.get();
}
public String getF68() {
return f68.get();
}
public String getF69() {
return f69.get();
}
public String getF70() {
return f70.get();
}
public String getF71() {
return f71.get();
}
public String getF72() {
return f72.get();
}
public String getF73() {
return f73.get();
}
public String getF74() {
return f74.get();
}
public String getF75() {
return f75.get();
}
public String getF76() {
return f76.get();
}
public String getF77() {
return f77.get();
}
public String getF78() {
return f78.get();
}
Record (String f1,String f2,String f3,String f4,String f5,String f6,String f7,String f8,String f9,
String f10,String f11,String f12,String f13,String f14,String f15,String f16,String f17,String f18,String f19,
String f20,String f21,String f22,String f23,String f24,String f25,String f26,String f27,String f28,String f29,
String f30,String f31,String f32,String f33,String f34,String f35,String f36,String f37,String f38,String f39,
String f40,String f41,String f42,String f43,String f44,String f45,String f46,String f47,String f48,String f49,
String f50,String f51,String f52,String f53,String f54,String f55,String f56,String f57,String f58,String f59,
String f60,String f61,String f62,String f63,String f64,String f65,String f66,String f67,String f68,String f69,
String f70,String f71,String f72,String f73,String f74,String f75,String f76,String f77,String f78) {
this.f1 = new SimpleStringProperty (f1);
this.f2 = new SimpleStringProperty (f2);
this.f3 = new SimpleStringProperty (f3);
this.f4 = new SimpleStringProperty (f4);
this.f5 = new SimpleStringProperty (f5);
this.f6 = new SimpleStringProperty (f6);
this.f7 = new SimpleStringProperty (f7);
this.f8 = new SimpleStringProperty (f8);
this.f9 = new SimpleStringProperty (f9);
this.f10 = new SimpleStringProperty (f10);
this.f11 = new SimpleStringProperty (f11);
this.f12 = new SimpleStringProperty (f12);
this.f13 = new SimpleStringProperty (f13);
this.f14 = new SimpleStringProperty (f14);
this.f15 = new SimpleStringProperty (f15);
this.f16 = new SimpleStringProperty (f16);
this.f17 = new SimpleStringProperty (f17);
this.f18 = new SimpleStringProperty (f18);
this.f19 = new SimpleStringProperty (f19);
this.f20 = new SimpleStringProperty (f20);
this.f21 = new SimpleStringProperty (f21);
this.f22 = new SimpleStringProperty (f22);
this.f23 = new SimpleStringProperty (f23);
this.f24 = new SimpleStringProperty (f24);
this.f25 = new SimpleStringProperty (f25);
this.f26 = new SimpleStringProperty (f26);
this.f27 = new SimpleStringProperty (f27);
this.f28 = new SimpleStringProperty (f28);
this.f29 = new SimpleStringProperty (f29);
this.f30 = new SimpleStringProperty (f30);
this.f31 = new SimpleStringProperty (f31);
this.f32 = new SimpleStringProperty (f32);
this.f33 = new SimpleStringProperty (f33);
this.f34 = new SimpleStringProperty (f34);
this.f35 = new SimpleStringProperty (f35);
this.f36 = new SimpleStringProperty (f36);
this.f37 = new SimpleStringProperty (f37);
this.f38 = new SimpleStringProperty (f38);
this.f39 = new SimpleStringProperty (f39);
this.f40 = new SimpleStringProperty (f40);
this.f41 = new SimpleStringProperty (f41);
this.f42 = new SimpleStringProperty (f42);
this.f43 = new SimpleStringProperty (f43);
this.f44 = new SimpleStringProperty (f44);
this.f45 = new SimpleStringProperty (f45);
this.f46 = new SimpleStringProperty (f46);
this.f47 = new SimpleStringProperty (f47);
this.f48 = new SimpleStringProperty (f48);
this.f49 = new SimpleStringProperty (f49);
this.f50 = new SimpleStringProperty (f50);
this.f51 = new SimpleStringProperty (f51);
this.f52 = new SimpleStringProperty (f52);
this.f53 = new SimpleStringProperty (f53);
this.f54 = new SimpleStringProperty (f54);
this.f55 = new SimpleStringProperty (f55);
this.f56 = new SimpleStringProperty (f56);
this.f57 = new SimpleStringProperty (f57);
this.f58 = new SimpleStringProperty (f58);
this.f59 = new SimpleStringProperty (f59);
this.f60 = new SimpleStringProperty (f60);
this.f61 = new SimpleStringProperty (f61);
this.f62 = new SimpleStringProperty (f62);
this.f63 = new SimpleStringProperty (f63);
this.f64 = new SimpleStringProperty (f64);
this.f65 = new SimpleStringProperty (f65);
this.f66 = new SimpleStringProperty (f66);
this.f67 = new SimpleStringProperty (f67);
this.f68 = new SimpleStringProperty (f68);
this.f69 = new SimpleStringProperty (f69);
this.f70 = new SimpleStringProperty (f70);
this.f71 = new SimpleStringProperty (f71);
this.f72 = new SimpleStringProperty (f72);
this.f73 = new SimpleStringProperty (f73);
this.f74 = new SimpleStringProperty (f74);
this.f75 = new SimpleStringProperty (f75);
this.f76 = new SimpleStringProperty (f76);
this.f77 = new SimpleStringProperty (f77);
this.f78 = new SimpleStringProperty (f78);
}
}
private final TableView<Record> tableView = new TableView<>();
private final ObservableList<Record> dataList= FXCollections.observableArrayList();
private TableColumn[] tableColumns;
public SAPImportController(File csvFile ) {
this.setCsvFile(csvFile);
}
@FXML
public void initialize() {
// this.SAPtable.setItems(dataList);
readCSV();
this.tableView.setItems(dataList);
this.SAPImport.getChildren().add(tableView);
}
@SuppressWarnings({ "unused", "unchecked" })
private void readCSV() {
BufferedReader br;
try {
br = new BufferedReader(new FileReader(this.getCsvFile()));
String line;
Boolean isFirstLine = true;
while ((line = br.readLine()) != null) {
String[] fields = line.split(";", -1);
if (isFirstLine) {
tableColumns = new TableColumn[fields.length];
int index = 0;
for (String columnName : fields) {
tableColumns[index++] = new TableColumn(fields[index-1]);
}
this.tableView.getColumns().addAll(tableColumns);
isFirstLine = false;
} else {
Record record = new Record(fields[0], fields[1], fields[2], fields[3], fields[4], fields[5], fields[6], fields[7], fields[8], fields[9],
fields[10], fields[11], fields[12], fields[13], fields[14], fields[15], fields[16], fields[17], fields[18], fields[19],
fields[20], fields[21], fields[22], fields[23], fields[24], fields[25], fields[26], fields[27], fields[28], fields[29],
fields[30], fields[31], fields[32], fields[33], fields[34], fields[35], fields[36], fields[37], fields[38], fields[39],
fields[40], fields[41], fields[42], fields[43], fields[44], fields[45], fields[46], fields[47], fields[48], fields[49],
fields[50], fields[51], fields[52], fields[53], fields[54], fields[55], fields[56], fields[57], fields[58], fields[59],
fields[60], fields[61], fields[62], fields[63], fields[64], fields[65], fields[66], fields[67], fields[68], fields[69],
fields[70], fields[71], fields[72], fields[73], fields[74], fields[75], fields[76], fields[77]);
dataList.add(record);
}
}
} catch (IOException ex) {
}
}
public File getCsvFile() {
return csvFile;
}
public void setCsvFile(File csvFile) {
this.csvFile = csvFile;
}
}