java - 如何在 Servlet 程序中获取正确的文件路径?

标签 java file servlets

我正在尝试使用相对路径读取 xml 和 txt 文件,
我试过 getServletContext().getContextPath();但它以错误的方式获取路径
例如

我的文件路径是:

D:\dev\workspace\Simulater\src\resources\Map.xml



现在当我申请时,
System.out.println(getServletContext().getContextPath());

我得到一个输出:

/Simulater



当我申请时:
File myTestFile= new File(Api.CONTEXT_PATH+fileName);
String path = myTestFile.getAbsoluteFile().toString();
System.out.println(path);

我得到 D:\Simulater\src\resources\Map.xml
这是一条错误的路径,因为它不包含

:\dev\workspace\



它接缝就像 java 获取项目名称并添加包含它的驱动程序

所以任何人都可以提供任何帮助来获得正确的道路

谢谢

最佳答案

使用 getServletContext().getRealPath("/")获取完整路径 D:\dev\workspace\Simulater\src\resources\然后您可以通过提供此完整路径和文件名来读取文件。

关于java - 如何在 Servlet 程序中获取正确的文件路径?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26994321/

相关文章:

java - Java 中对区域设置 (tn-ph) 和 (hmn-cn) 的支持

库导入后Java包不存在

c++ - 递归函数可以写入 C++ 中的文件吗?

eclipse - SIP Servlet 未在 Eclipse 的 JBOSS 7.2 中启动

java - 如何配置项目(取决于 maven/web.xml/servlet API)AJAX 调用不包含项目名称?

java - 将数据从一个表移动到另一个类似表

java - gwt项目: error in external library "cannot be abstract"

java - 在另一个 EJB 中调用一个 EJB 是否健康?

file - 尝试使用 lua 遍历 Directory 来列出所有文件

c# - 获取文件扩展名 C#