【发布时间】:2014-02-10 16:18:59
【问题描述】:
正如标题所述,我正在将本地数据库中的 java 查询导出到 CSV 文件中,所有必需的信息都正确打印出来,但是我的列标题打印在 A 列(第 1-8 行)中,而不是沿列 (A-H)。简而言之,我在第 1 列打印标题 1-8,然后以正确的顺序显示数千行数据。对java很陌生,如果我很傻,对不起!
PrintWriter out = new PrintWriter(new BufferedWriter(
new FileWriter("TestingRawData.csv")));
ResultSetMetaData rsmd = result.getMetaData();
int columnCount = rsmd.getColumnCount();
for (int i = 1; i < columnCount + 1; i++) {
String name = rsmd.getColumnName(i);
out.println(name);
// print the name
}
while (result.next()) {
out.println(String.format("%s,%s,%s,%s,%s,%s,%s,%s",
result.getString(1), result.getString(2),
result.getString(3), result.getString(4),
result.getString(5), result.getString(6),
result.getString(7), result.getString(8)));
}
【问题讨论】:
-
与您的问题无关,但每个数据字段应用双引号括起来。这样可以防止数据中的逗号引起的任何问题。
-
谢谢,马上整理一下
标签: java mysql sql postgresql csv