2017-09-27 87 views
0

我试图读取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(); 
     } 

    } 
} 
+0

最有可能的(基于异常消息'无法解析数字:**'在空字符串**')有没有值的日期列。你做了什么来识别失败的记录? – SubOptimal

+0

感谢@SubOptimal为您的反馈...我将检查相同的... – Girish

回答