想了两种解决方法,第一种比较麻烦,其实就是通过java动态创建ODBC数据源来访问DBF文件,这个就需要用到registry,来修改注册表了。 其实,主要是动态创建ODBC数据源,开始很简单,可以手工设置一次数据源,当然也可以通过程序直接生成,问题都不大。下面只说怎样修改。 import com.ice.jni.registry.RegStringValue; import com.ice.jni.registry.Registry; import com.ice.jni.registry.RegistryKey; public class TestC { public static void main(String[] str) { try { RegistryKey child = Registry.HKEY_CURRENT_USER .openSubKey("Software").openSubKey("ODBC").openSubKey ("ODBC.INI").openSubKey("data_0930",RegistryKey.ACCESS_ALL);// 操作权限是通过RegistryKey来获取的。 String de = "F:\\commony\\test\\data\\070901"; // 我的DBF数据的目录//其中,data_0930是我第一次设置的数据源的一个注册表的名称 System.out.println(child.getStringValue("SourceDB")); child.setValue(new RegStringValue(child,"SourceDB",de)); System.out.println(child.getFullName()); } catch (Exception e) { e.printStackTrace(); } } }
[1] [2] [3] 下一页 |