Java 在servlet中写入文件时出错
我已经从servlet中的doPost方法创建了一个文件,但无法将数据写入其中。我想不出是什么错误。顺便说一下,文件正在创建Java 在servlet中写入文件时出错,java,file,jsp,servlets,Java,File,Jsp,Servlets,我已经从servlet中的doPost方法创建了一个文件,但无法将数据写入其中。我想不出是什么错误。顺便说一下,文件正在创建 // TODO Auto-generated method stub response.setContentType("text/html"); String name=request.getParameter("name"); response.getWriter().println(name); File
// TODO Auto-generated method stub
response.setContentType("text/html");
String name=request.getParameter("name");
response.getWriter().println(name);
File filename= new File("/home/ksampath/D3/DedupeEngine/cache3.txt");
filename.createNewFile();
BufferedWriter out = null;
try
{
System.out.println("I am going to create a new file");
FileWriter fw=new FileWriter("cache3.txt",true);
out=new BufferedWriter(fw);
out.write("hello world");
out.write(name);
}
catch(IOException e)
{
System.err.println("Error"+ e.getMessage());
}
finally
{
if(out!=null)
{
out.close();
}
}
/*
System.out.println("Lets us check whether it works");
PrintWriter writer=response.getWriter();
writer.println("<h3>hello This is my first servlet</h3>");*/
}
//TODO自动生成的方法存根
response.setContentType(“text/html”);
字符串名称=request.getParameter(“名称”);
response.getWriter().println(名称);
文件名=新文件(“/home/ksampath/D3/dedudeEngine/cache3.txt”);
filename.createNewFile();
BufferedWriter out=null;
尝试
{
System.out.println(“我将创建一个新文件”);
FileWriter fw=新的FileWriter(“cache3.txt”,true);
out=新的缓冲写入程序(fw);
写出(“你好世界”);
写出(姓名);
}
捕获(IOE异常)
{
System.err.println(“Error”+e.getMessage());
}
最后
{
if(out!=null)
{
out.close();
}
}
/*
System.out.println(“让我们检查它是否工作”);
PrintWriter=response.getWriter();
println(“你好,这是我的第一个servlet”)*/
}
试试看
公共文件编写器(文件、,
布尔(追加)
抛出IOException
在给定文件对象的情况下构造FileWriter对象。如果第二个
参数为true,则字节将写入文件末尾
而不是开始
由@singhakash提供的解决方案是正确的 你可以使用
FileWriter fw=new FileWriter(filename,true);
如前所述,若第二个参数为true,那个么将在末尾追加字节
或者您可以使用getAbsoluteFile()
FileWriter fw=new FileWriter(filename.getAbsoluteFile());
getAbsoluteFile()
方法将返回绝对摘要
表示与此抽象路径名()相同的文件或目录的路径名
您是否遇到异常或编译错误?
FileWriter fw=new FileWriter(filename.getAbsoluteFile());