我正在尝试创建一个程序,该程序从CSV文件中获取输入,并将其写入Java创建的访问数据库和表格。该程序使用一个时环通过CSV文件。文件的第一行被完美地写入数据库,但在第二行崩溃,同时试图将相同的输入写入表。我该如何解决?到目前为止,这是我的代码:
public void GPXtoAccess() {
try {
Access = new Scanner(DummyCSV);
Scanner = new Scanner(DummyCSV);
while (Access.hasNextLine()) {
Scanner.useDelimiter(";");
GPXlat = Scanner.next();
GPXlon = Scanner.next();
GPXtime = Scanner.next();
GPXname = Scanner.next();
GPXdesc = Scanner.next();
try {
GPXTable.addRow(Column.AUTO_NUMBER, GPXlat, GPXlon, GPXtime, GPXname, GPXdesc);
} catch (IOException T) {
System.out.println("Error: " + T);
System.out.println("Error is thrown while writing data to table");
}
}
} catch (FileNotFoundException M) {
System.out.println("Error: " + M);
}
}
在您的代码中,您使用的是返回 String
值的 Scanner.next()
。大多数时候,您的表列值与String
不匹配,这就是为什么您获得Numberformatexception
很可能您可以尝试将字符串类型的一个转换为数字类型。请检查您要尝试使用的数据的数据类型。