У меня есть код, который формирует файл dbf, но два поля имеют числовой тип, и одно из них имеет значение 45,05, а другое 45, но я не могу записать два разных значения в файл dbf, я получил 45 и 45 вместо 45,05 и 45!
switch (metaData.getColumnType(i + 1)) {
case 91:
arrfiled[recNum].setName(temp);
arrfiled[recNum].setDataType(DBFField.FIELD_TYPE_D);
break;
case 93:
arrfiled[recNum].setName(temp);
arrfiled[recNum].setDataType(DBFField.FIELD_TYPE_D);
break;
case 2:
arrfiled[recNum].setName(temp);
arrfiled[recNum].setDataType(DBFField.FIELD_TYPE_N);
arrfiled[recNum].setFieldLength(
metaData.getPrecision(i + 1) == 0 ? 10 : metaData.getPrecision(i + 1));
break;
case 3:
arrfiled[recNum].setName(temp);
arrfiled[recNum].setDataType(DBFField.FIELD_TYPE_N);
arrfiled[recNum].setFieldLength(
metaData.getPrecision(i + 1) == 0 ? 10 : metaData.getPrecision(i + 1));
break;
case 8:
arrfiled[recNum].setName(temp);
arrfiled[recNum].setDataType(DBFField.FIELD_TYPE_N);
arrfiled[recNum].setFieldLength(
metaData.getPrecision(i + 1) == 0 ? 10 : metaData.getPrecision(i + 1));
break;
default:
arrfiled[recNum].setName(temp);
arrfiled[recNum].setDataType(DBFField.FIELD_TYPE_C);
arrfiled[recNum].setFieldLength(metaData.getPrecision(i + 1) > 253
? 253
: metaData.getPrecision(i + 1));
break;
}
recNum++;
}