目的是我想使用Properties将jTable(DefaultTableModel)的内容保存并加载到文件中。使用主要类中的这一行可以保存内容:
prop.setProperty("extraProfiles", extraRC.saveExtraProfiles());
包含该表的类有一个getter:
public String saveExtraProfiles() {
return model.getDataVector().toString();
}
我得到的结果是:[[Zijborstelprofiel - P3A314,Anodisé,2000,1],[L-Profiel 15 x 15,Anodisé,2000,1],[L-Profiel 15 x 15,Anodisé,2000,1 ]
现在我想在重新打开程序时将这个保存的字符串加载到表中:
extraRC.setExtraProfiles(prop.getProperty("extraProfiles", ""));
现在,setter看起来像这样:
public void setExtraProfiles(String dataVector) {
if (!dataVector.equals("")) {
Vector<String> vectordata = new Vector<String>(Arrays.asList(dataVector));
Vector<String> columns = new Vector<String>();
for (int c = 0; c < model.getColumnCount(); c++) {
columns.add(model.getColumnName(c));
}
model.setDataVector(vectordata, columns);
}
}
但抛出异常:线程“AWT-EventQueue-0”中的异常java.lang.ClassCastException:java.lang.String无法强制转换为java.util.Vector
任何解决方案?
提前致谢!