Java 如何从数据库中获取数据并将其存储到文本文件中?
我是Java数据库新手,我正在尝试从1个表中导出数据并将其存储在文本文件中。此时,下面的代码写入文本文件,但全部在一行上?有人能帮忙吗 我的代码Java 如何从数据库中获取数据并将其存储到文本文件中?,java,derby,Java,Derby,我是Java数据库新手,我正在尝试从1个表中导出数据并将其存储在文本文件中。此时,下面的代码写入文本文件,但全部在一行上?有人能帮忙吗 我的代码 private static String listHeader() { String output = "Id Priority From Label Subject\n"; output += "== ======== ====
private static String listHeader() {
String output = "Id Priority From Label Subject\n";
output += "== ======== ==== ===== =======\n";
return output;
}
public static String Export_Message_Emails() {
String output = listHeader();
output +="\n";
try {
ResultSet res = stmt.executeQuery("SELECT * from messages ORDER BY ID ASC");
while (res.next()) { // there is a result
output += formatListEntry(res);
output +="\n";
}
} catch (Exception e) {
System.out.println(e);
return null;
}
return output;
}
public void exportCode(String File1){
try {
if ("Messages".equals(nameOfFile)){
fw = new FileWriter(f);
//what needs to be written here
//fw.write(MessageData.listAll());
fw.write(MessageData.Export_Message_Emails());
fw.close();
}
}
不要使用硬编码值“\n”。而是使用
System.getProperty(“line.separator”)如果您使用的是Java 7或更高版本,则可以使用System.lineSeparator()代码>不要使用硬编码值“\n”。而是使用System.getProperty(“line.separator”)如果您使用的是Java 7或更高版本,则可以使用System.lineSeparator()代码>不要使用硬编码值“\n”。而是使用System.getProperty(“line.separator”)如果您使用的是Java 7或更高版本,则可以使用System.lineSeparator()代码>不要使用硬编码值“\n”。而是使用System.getProperty(“line.separator”)如果您使用的是Java 7或更高版本,则可以使用System.lineSeparator()
尝试String.format(“%n”)
而不是“\n”
尝试String.format(“%n”)
而不是“\n”
尝试String.format(“%n”)
而不是“\n”
尝试String.format(“%n”)
我假设您使用的是Windows,并且您使用记事本打开文件。如果这是正确的,那么这实际上不是您的输出的问题,而是您正在使用的编辑器的问题
试试更好的编辑器,如记事本++
按照其他答案的建议去做,并使用System.getProperty(“line.separator”);或类似的
使用编写器实现,如PrintWriter
就我个人而言,我更喜欢“\n”而不是系统行分隔符,Windows上的系统行分隔符是“\r\n”
编辑:添加选项3我假设您正在使用Windows,并且您正在使用记事本打开文件。如果这是正确的,那么这实际上不是您的输出的问题,而是您正在使用的编辑器的问题
试试更好的编辑器,如记事本++
按照其他答案的建议去做,并使用System.getProperty(“line.separator”);或类似的
使用编写器实现,如PrintWriter
就我个人而言,我更喜欢“\n”而不是系统行分隔符,Windows上的系统行分隔符是“\r\n”
编辑:添加选项3我假设您正在使用Windows,并且您正在使用记事本打开文件。如果这是正确的,那么这实际上不是您的输出的问题,而是您正在使用的编辑器的问题
试试更好的编辑器,如记事本++
按照其他答案的建议去做,并使用System.getProperty(“line.separator”);或类似的
使用编写器实现,如PrintWriter
就我个人而言,我更喜欢“\n”而不是系统行分隔符,Windows上的系统行分隔符是“\r\n”
编辑:添加选项3我假设您正在使用Windows,并且您正在使用记事本打开文件。如果这是正确的,那么这实际上不是您的输出的问题,而是您正在使用的编辑器的问题
试试更好的编辑器,如记事本++
按照其他答案的建议去做,并使用System.getProperty(“line.separator”);或类似的
使用编写器实现,如PrintWriter
就我个人而言,我更喜欢“\n”而不是系统行分隔符,Windows上的系统行分隔符是“\r\n”
编辑:添加选项3除非您尝试练习Java编程(这当然很好!),否则您可以使用SYSCS_UTIL.SYSCS_export_table系统过程从一个表中导出所有数据并将其存储在文件中:除非您尝试练习Java编程(这当然很好!),您可以使用SYSCS_UTIL.SYSCS_export_table系统过程从一个表中导出所有数据并将其存储在一个文件中:,除非您试图练习Java编程(这当然很好!),您可以使用SYSCS_UTIL.SYSCS_export_table系统过程从一个表中导出所有数据并将其存储在一个文件中:,除非您试图练习Java编程(这当然很好!),您可以使用SYSCS_UTIL.SYSCS_export_table系统过程从一个表中导出所有数据并将其存储在文件中:我在何处写入system.llineSeparator();而不是输出+=“\n”写入输出+=System.lineSeparator(),在哪里写入System.llineSeparator();而不是输出+=“\n”写入输出+=System.lineSeparator(),在哪里写入System.llineSeparator();而不是输出+=“\n”写入输出+=System.lineSeparator(),在哪里写入System.llineSeparator();如果换行符有可能是“\r\n”,为什么要硬编码“\n”而不是将换行符从系统本身中拉出,而不是将换行符从输出+=“\n”写入输出+=System.lineSeparator()。因为系统出于神秘的原因使用特定的换行符并不意味着您必须使用它。即使在Windows上,我也经常尝试只使用“\n”(我将Eclipse、Git等设置为使用Unix样式)。如果换行符有可能是“\r\n”,为什么要硬编码“\n”而不是从系统本身提取换行符呢,仅仅因为系统出于神秘的原因使用了一个特定的行分隔符并不意味着你必须使用它。即使在Windows上,我也经常尝试只使用“\n”(我将Eclipse、Git等设置为使用Unix样式)。如果换行符有可能是“\r\n”,为什么要硬编码“\n”而不是从系统本身提取换行符呢,仅仅因为系统出于神秘的原因使用了一个特定的行分隔符并不意味着你必须使用它。即使在Windows上,我也经常尝试只使用“\n”(我将Eclipse、Git等设置为使用Unix样式)。如果有机会使用换行符