在jsp servlet中创建文件

时间:2014-12-18 07:55:49

标签: java file servlets

当我在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!");
    }

哪里可以找到该文件?

4 个答案:

答案 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();

简单