Java读写dbf文件
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java读写dbf文件相关的知识,希望对你有一定的参考价值。
struts2+sping+ibatis的框架如何将查询出来的结果写到dbf文件中?又如何将dbf读出呢? 希望有代码例子……感激不尽!
Java读取DBF文件,需要加载开源jar包JavaDBF.jar,然后使用里面的方法进行读写,示例如下:
package search;public class ReadDBF
public static void main(String args[])
readDBF();
private static void readDBF()
try
System.out.println("正在读取文件!");
DBFReader dbfreader = new DBFReader("D:\\\\ZG2011格式.dbf");
for(int b = 0;b<dbfreader.getFieldCount();b++)
if(b>0)
System.out.print(",");
System.out.print(dbfreader.getField(b).getName().trim().toUpperCase());
if(b == (dbfreader.getFieldCount()-1))
System.out.print("\\n");
for(int i = 0;dbfreader.hasNextRecord();i++)
String[] aobj = dbfreader.nextRecordString();
for(int b = 0;b<dbfreader.getFieldCount();b++)
if(b>0)
System.out.print(",");
System.out.print(aobj[b].trim());
if(b == (dbfreader.getFieldCount()-1))
System.out.print("\\n");
System.out.println("读取文件成功!");
catch(Exception e)
System.out.print(e.getMessage());
参考技术A /**
* DBF文件读写简单例子
*
* @author Eric 2007-6-22
* @version 1.0
*/
public class mytest /**
* 读DBF文件
*/
private static void readDBF()
try
System.out.println("正在读取文件!");
DBFReader dbfreader = new DBFReader("d:/aa.dbf");
for(int b = 0;b<dbfreader.getFieldCount();b++)
if(b>0)
System.out.print(",");
System.out.print(dbfreader.getField(b).getName().trim().toUpperCase());
if(b == (dbfreader.getFieldCount()-1))
System.out.print("\n");
for(int i = 0;dbfreader.hasNextRecord();i++)
String aobj[] = dbfreader.nextRecordString();
for(int b = 0;b<dbfreader.getFieldCount();b++)
if(b>0)
System.out.print(",");
System.out.print(aobj[b].trim());
if(b == (dbfreader.getFieldCount()-1))
System.out.print("\n");
System.out.println("读取文件成功!");
catch(Exception e)
e.printStackTrace();
/**
* 写DBF文件
*/
private static void writeDBF()
try
JDBField ajdbfield[] = new JDBField[4];
ajdbfield[0] = new JDBField("字段1",'C',20,0);
ajdbfield[1] = new JDBField("字段2",'C',20,0);
ajdbfield[2] = new JDBField("filed3",'C',20,0);
ajdbfield[3] = new JDBField("filed4",'C',20,0);
System.out.println("正在生成DBF字段!");
DBFWriter dbfwriter = new DBFWriter("d:/aa.dbf", ajdbfield); /*生成 DBF 文件*/
Object aobj[] = new Object[4];
aobj[0]="1";
aobj[1]="1";
aobj[2]="1";
aobj[3]="1";
System.out.println("正在写入数据!");
dbfwriter.addRecord(aobj);
dbfwriter.close();
System.out.println("执行成功!");
catch (JDBFException e)
// TODO Auto-generated catch block
e.printStackTrace();
public static void main(String[] args)
writeDBF();
readDBF();
以上是关于Java读写dbf文件的主要内容,如果未能解决你的问题,请参考以下文章