使用GEOTools读取dbf文件

前面讲到使用SimplefeatureStore.addFeatures()这个方法来把数据装入空SHP文件内,那么反过来,要怎么读取SHP文件内的属性数据呢?这主要用到DbaseFileReader这一个类。通过这个类可以读取所有字段每一行的数据,然后赋值到一个数组内进行输出。

具体的代码如下:
    public static void DbaseFileReader() 
    {
DbaseFileReader reader = null; 
   try {  
    //第三个参数是使用一个charset类型的实例,使用的参数是编码类型
    reader = new DbaseFileReader(new ShpFiles(path), false, Charset.forName("GBK"));
       DbaseFileHeader header = reader.getHeader();  
       //返回字段的数量
       int numFields = header.getNumFields();
       System.out.println(numFields);
       //迭代读取记录  
       while (reader.hasNext()) 
       {  
           try {
               Object[] entry = reader.readEntry();  
               for (int i=0; i
               {
                   String title = header.getFieldName(i);  
                   Object value = entry[i];  
                   System.out.print(title+"="+value+"\t");  
               }
               System.out.println();
           } 
           catch (Exception e) 
           {  
               e.printStackTrace();  
           }  
       }  
   } 
   catch (Exception e) 
   {  
       e.printStackTrace();  
   } 
   finally 
   {  
       if (reader != null) 
       {  
           //关闭  
           try 
           {reader.close();} 
           catch (Exception e) {}  
       }  
   }  
    }

你可能感兴趣的:(使用GEOTools读取dbf文件)