【发布时间】:2012-11-05 13:53:41
【问题描述】:
我在尝试在我的 servlet 应用程序中创建一个目录来保存音频文件时遇到了麻烦。当我尝试在根目录中创建它时: (C:/something) 我没有问题,但是当我尝试在 tomcat 路径中创建它时,我不能。有谁知道为什么? 这是我的代码(我必须通过帖子传递目标路径,但我首先尝试使用先前设置的路径)。
public void doPost(HttpServletRequest request,
HttpServletResponse response) throws ServletException, IOException
{
PrintWriter out = response.getWriter();
out.println("<HTML><HEAD></HEAD><BODY>");
//nombreFichero = request.getParameter("nombreArchivo");
//Ruta = request.getParameter("Destino");
String destino = request.getParameter("Destino");
String ruta2 = request.getContextPath();
ruta2 += "/InformesAudio/";
out.println("<P>Ruta para guardar: <B>" + destino + "</B></P>");
out.println("<P>Ruta armada: <B>" + ruta2 + "</B></P>");
File crearCarpeta = new File(destino);
if(!crearCarpeta.exists())
{
crearCarpeta.mkdir();
out.println("<P>La ruta de getContextPath modificada es: </P><P>" + destino + "</P>"
+ "<P>CARPETA CREADA EXITOSAMENTE</P>");
}
感谢各位朋友的帮助!!祝你今天过得愉快!! ;)
【问题讨论】:
-
@JordiLaforge 创建目录不是例外 :(
-
我隐约记得tomcat(出于安全考虑)限制了webapp目录中/下的某些文件系统操作......你可以/应该将你的文件存储移出那里,比如C:\ InformesAudio \?
-
@Carol,你检查过tomcat日志有没有错误?
-
@corlettk 我不能,因为我使用的是在线软件,而且我必须能够从互联网上复制它,所以我认为它应该在 Tomcat 服务器内。
-
@corlettk 我已经检查过了,但不是错误。你知道如果创建我的目录我必须使用“/”或“\\”吗?当我得到
request.getContextPath()的上下文时,我在问这个问题,我得到“/HIS”,我想在这个文件夹中创建它,比如:“/HIS/InformesAudio/” 这让我抓狂:(谢谢你的时间;)
标签: java tomcat servlets mkdir create-directory