我试图读取FoxPo .dbf文件,但得到以下错误行:读DBF文件/硒
而(!(rowObjects = reader.nextRecord())= NULL)
错误:
com.linuxense.javadbf.DBFException: Failed to parse Number: empty String at com.linuxense.javadbf.DBFReader.nextRecord(DBFReader.java:310) at datamigration.DataMigration.main(DataMigration.java:34)
您的帮助将不胜感激。
感谢,
下面,如果我的代码:
package datamigration;
import java.io.*;
import com.linuxense.javadbf.*;
public class DataMigration {
public static void main(String args[]) {
try {
InputStream inputStream = new FileInputStream("D:/projects/DataMigration/data/customer.dbf");
DBFReader reader = new DBFReader(inputStream);
reader.setCharactersetName("gbk");
int numberOfFields = reader.getFieldCount();
for (int i = 0; i < numberOfFields; i++) {
DBFField field = reader.getField(i);
System.out.println(field.getName());
}
Object[] rowObjects;
while ((rowObjects = reader.nextRecord()) != null) {
for (int i = 0; i < rowObjects.length; i++) {
System.out.println(rowObjects[i]);
}
}
inputStream.close();
} catch (DBFException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
}
最有可能的(基于异常消息'无法解析数字:**'在空字符串**')有没有值的日期列。你做了什么来识别失败的记录? – SubOptimal
感谢@SubOptimal为您的反馈...我将检查相同的... – Girish