当我在java servlet
中创建文件时,我无法找到要打开的文件。这是我在servlet
中的代码:
FileOutputStream fout;
try {
fout = new FileOutputStream("title.txt");
new PrintStream(fout).println(request.getParameter("txttitle"));
fout.close();
System.out.println(request.getParameter("txttitle"));
} catch (Exception e) {
System.out.println("I can't create file!");
}
哪里可以找到该文件?
答案 0 :(得分:2)
如果您首先按
创建文件File f = new File("title.txt");
fout = new FileOutputStream(f);
然后使用getAbsolutePath
返回创建位置的位置
System.out.println (f.getAbsolutePath());
答案 1 :(得分:1)
由于您没有为该文件指定任何目录,因此它将被放置在运行您的servlet容器的进程的默认目录中。
我建议您在执行此类操作时始终指定文件的完整路径。
如果您正在运行tomcat,则可以使用System.getProperty(“catalina.base”)来获取tomcat基目录的路径。这有时会有所帮助。
答案 2 :(得分:0)
创建文件对象并确保文件存在: -
File f = new File("title.txt");
if(f.exists() && !f.isDirectory()) {
fout = new FileOutputStream(f);
new PrintStream(fout).println(request.getParameter("txttitle"));
fout.close();
System.out.println(request.getParameter("txttitle"));
}
如果servlet找不到该文件,则给出指定文件的完整路径,如new File("D:\\Newfolder\\title.txt");
答案 3 :(得分:0)
如果文件不存在,你应首先检查,创建它
if(!new File("title.txt").exists())
{
File myfile = new File("title.txt");
myfile.createNewFile();
}
然后你可以使用FileWriter或FileOutputStream来写文件我更喜欢FileWriter
FileWriter writer = new FileWriter("title.txt");
writer.write("No God But Allah");
writer.close();
简单