我无法在Tomcat中创建然后编写文件。如果我将java程序(仅编写代码段)作为 Java应用程序运行,则会创建该文件,但在Tomcat中会失败。
没有错误消息。根本就没有创建该文件!
如果我在这里遗漏了一些内容,请提出建议:
//code inside the servlet
public void setData(HttpServletRequest request){
name=request.getParameter("name");
address=request.getParameter("address");
BufferedWriter dataOut;
try {
System.out.println("Wrinting file...");
dataOut = new BufferedWriter(new FileWriter("data.txt", true));
dataOut.write("name:");
dataOut.flush();
dataOut.write("address");
dataOut.flush();
dataOut.write("\n");
dataOut.flush();
dataOut.close();
System.out.println("File write complete!");
}
catch(Exception e){
e.printStackTrace();
}
答案 0 :(得分:6)
看起来这个文件确实没有问题。
您可能实际上缺少 保存的地方。
更改此行:
System.out.println("File write complete!");
要:
System.out.println("File write complete! Saved to: "+new File("data.txt").getAbsolutePath());
你可以解决这个问题。
答案 1 :(得分:3)
正在创建文件,但它正在使用相对路径。它将被创建 relative 到执行位置,在Tomcat上它不会是你习惯的地方。
使用绝对路径或打印其位置。