日期:2014-05-16 浏览次数:20600 次
以下代码是导出dbf文件
public String doCreateDBF(String[] fieldsZh,String[] fields,List list,HttpServletResponse response,int [] datasize) throws IOException{ DBFWriter Writer=new DBFWriter();//首先要创建一个DBFwriter response.setCharacterEncoding("UTF-8"); OutputStream os=response.getOutputStream(); DynamicPO po = null; Object rowData[]; DBFField []field=new DBFField[fieldsZh.length];//创建dbf文件的列文件 int rowSize = list.size(); int colSize = field.length; for(int i=0;i<fields.length;i++){ /*po=(DynamicPO) list.get(0);*/ field[i]=new DBFField(); field[i].setDataType(DBFField.FIELD_TYPE_C); field[i].setFieldLength(datasize[i]); field[i].setFieldName((fields[i]));//为每一列设置值 } Writer.setFields(field);//将列交给writer写入dbf文件 String strValue="";//为类属性定义接受参数 for(int row=0;row<rowSize;row++){ rowData= new Object[colSize];//新建一个列, po = (DynamicPO) list.get(row); for(int col=0;col<colSize;col++){ strValue=String.valueOf(po.getProperty(fields[col])); if(strValue==""||strValue.equals("")||strValue==null||"null".equals(strValue)){ rowData[col]=""; }else{ rowData[col]=strValue.toString(); } } Writer.addRecord( rowData); } Writer.write(os); os.close(); return null; }?