1.在设置字段名时调用
- fields.setName( title, characterSetName);
或
java 代码
- fields.setName( title, characterSetName);
来解决字段名乱码问题。
2.DBFWriter 在调用addRecord前,先调用
java 代码
- new DBFWriter().setCharactersetName( String characterSetName );
来解决内容数据体的乱码问题。
如例子
java 代码
- public void writeDBF() throws UnsupportedEncodingException{
- // 生成DBF文件过程
- DBFField fields = new DBFField();
- fields = new DBFField();
- fields.setName("名称", "GBK" );
- fields.setDataType( DBFField.FIELD_TYPE_C);
- fields.setFieldLength( 30 );
- DBFWriter writer = new DBFWriter();
- FileOutputStream fos = null;
- try{
- writer.setCharactersetName("GBK");
- writer.setFields( fields);
- Object rowData = new Object();
- rowData ="我爱中国";
- writer.addRecord( rowData);
- fos = new FileOutputStream( strFilePath );
- writer.write( fos);
- fos.close();
- }catch(IOException e){
- e.printStackTrace();
- }finally{
- if( fos != null ){
- try {
- fos.close();
- } catch (IOException e) {
- e.printStackTrace();
- }
- }
- }
- }