使用tomcat运行时在java中获取路径文件夹

时间:2015-03-01 10:11:25

标签: java tomcat

我有一个包含1个包和1个文件夹的项目:
包装是1。 pathpackage: “项目/ src目录/ JAVA / basebusiness”
2是文件夹。 pathfolder: “输入/运行”
在文件夹中我有一个文本文件CNPM.file,在包1中我有一个类ReadOrWriteFile。这是ReadOrWriteFile中的代码:

public static List<String> ReadFileTXT(String pathFile) throws FileNotFoundException, IOException{
        List<String> lst_result= new ArrayList<>();
        String path= new File("input\\run").getAbsolutePath();
        path+= pathFile;
        BufferedReader bR= new BufferedReader(new FileReader(path));
        String line="";
        while((line= bR.readLine()) != null){
            lst_result.add(line);
        }
        bR.close();
        return lst_result;
    }

当我在tomcat中运行代码时,我想得到项目中文件夹的路径。
我已经编写了代码并在控制台中运行但是它没有像web一样运行。我使用的是tomcat 8.0。 9和窗口。请帮帮我。

1 个答案:

答案 0 :(得分:2)

您想要一个webapp路径,例如/tomcat/webapps/mywebapp/文件夹?您需要ServletContext引用来在运行时读取路径。如果您在JSP页面上下文中,则它是一个隐式应用程序变量。

    // any servlet giving getServletContext() getter
    String path = ctx.getRealPath("/");
    System.out.println(path);
    - - - - 
    // in .jsp page
    String path = application.getRealPath("/"); 

或者使用resourceloader接口从类路径读取,作为评论之一。另一个可移植性提示总是使用类似unix的路径input/run分隔符,即使在Windows框中也是如此。 Java可以很好地处理它。