所以我有一个程序可以将数据从谷歌吐出到csv文件。我想要做的是允许用户通过使用字符串选择是否显示标题。
这是我的打印机:
...some code
// getting the queries to print
if (results.getRows() == null || results.getRows().isEmpty()) {
pw.println("No results Found.");
System.out.println("No results Found.");
} else {
// Print column headers.
for (ColumnHeaders header : results.getColumnHeaders()) {
pw.print(header.getName() + ", ");
}
pw.println();
// Print actual data.
for (List<String> row : results.getRows()) {
for (String column : row) {
pw.print(column + ",");
}
pw.println();
}
pw.close();
}
}
}
我有一个连接到我的程序的属性文件,我想把它放在一个用户在属性文件的标题部分输入no时,我不希望标题显示。
我正在考虑将标题部分转换为字符串并将其放入if then语句中。有什么建议? thx in advanced
编辑:
// column headers statement
if (headers=="yes") {
for (ColumnHeaders header : results.getColumnHeaders())
pw.print(header.getName() + ", ");
} else {
// Print column headers.
for (ColumnHeaders header : results.getColumnHeaders()) {
pw.print("" + ", ");
}
pw.println();
}
// getting the queries to print
if (results.getRows() == null || results.getRows().isEmpty()) {
pw.println("No results Found.");
System.out.println("No results Found.");
} else {
// Print actual data.
for (List<String> row : results.getRows()) {
for (String column : row) {
pw.print(column + ",");
}
pw.println();
}
pw.close();
}
}
}
但我现在所做的并不正常。
答案 0 :(得分:2)
首先,您没有正确检查用户输入以匹配
您需要更改
if (headers=="yes") {
到
if (headers.equals("yes")) {
除了逗号之外,我还会删除else语句,以便在第一行中打印出任何内容。你真的希望第一行只是逗号吗?
确保在最后关闭你的流,无论如何。看起来你的pw.close()在else语句中。