嗨,我必须在项目中使用 java 动态创建一个 XML 文件,并且必须使用基本路径 URL 读取它。我可以在手动创建文件时读取文件,但无法动态创建它。当我使用File f1 = new File("test.XML"); 它在tomcat 的 Bin 文件夹中创建文件。该文件必须在项目中创建,同时在 Tomcat 和 Jboss EAP 6 中运行。
问问题
4935 次
1 回答
3
您可以使用 servlet 上下文获取 Web 应用程序的真实路径:
new File( servletContext.getRealPath( "/text.XML" ) );
注意:如果您在 Linux 上运行 tomcat/jboss,您可能必须授予在 webapp 文件夹中写入的权限,但默认情况下这很可能是禁止的。
引用 Servlet API 文档ServletContext.getRealPath()
:
返回包含给定虚拟路径的真实路径的字符串。例如,路径“/index.html”返回服务器文件系统上的绝对文件路径,将由对“http://host/contextPath/index.html”的请求提供服务,其中 contextPath 是此 ServletContext 的上下文路径..
于 2012-10-05T13:56:57.533 回答