我正在尝试使用jdbc:odbc桥从MS Access db中导出很多大型表。我想将这些表保存为CSV文件,首先想知道最好的方法是什么?任何帮助将不胜感激。
答案 0 :(得分:3)
获取值并逐行分隔值写入标准文本文件。我确信有一些用于此目的的库
try
{
FileWriter writer = new FileWriter("c:\\temp\\MyFile.csv");
while(result.next())
{
for(int i = 0; i < columnSize; i++)
{
writer.append(result.getObject(i));
if(i < columnSize - 1)
writer.append(',');
}
writer.append('\n');
}
}
catch(Exception e)
{
e.printStackTrace();
}
答案 1 :(得分:1)
你可以使用opencsv http://opencsv.sourceforge.net
答案 2 :(得分:0)
一个完整的例子在这里:
https://github.com/NACHC-CAD/access-to-csv-tool
此代码包含测试代码中的完整示例,并完成了北风数据库的完整导出。
有关将单个表转换为 .csv 文件的代码,请参阅类 AccessToCsvUtil。
查看类 WriteToCsvIntegration 测试以查看导出数据库中所有表的代码。
此实用程序基于 ucanaccess jdbc 工具和 Apache commons-csv 工具。
<dependency>
<groupId>net.sf.ucanaccess</groupId>
<artifactId>ucanaccess</artifactId>
<version>4.0.4</version>
</dependency>
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-csv</artifactId>
<version>1.8</version>
</dependency>