从/ src / main / resources /读取文件

您好我正在尝试执行Web应用程序并遇到问题:我不知道如何使用保存在资源文件夹中的Java打开文本文件:

文本文件保存在资源文件夹中

String relativeWebPath ="/src/main/resources/words.txt"; //Import der des Textdoumentes String absoluteDiskPath = getServletContext().getRealPath(relativeWebPath); File f = new File(absoluteDiskPath); 

(文件words.txt)

正如您在图像上看到的那样,我正在尝试访问words.txt,但它无法正常工作。 有任何想法吗?

尝试这个。

 InputStream is = getClass().getClassLoader() .getResourceAsStream("/words.txt"); BufferedReader br = new BufferedReader(new InputStreamReader(is)); 

为了最佳实践,并避免这些问题,请将文本文件( words.txt )放入WEB_INF文件夹(这是资源的安全文件夹)。 然后:

 ServletContext context = getContext(); InputStream resourceContent = context.getResourceAsStream("/WEB-INF/words.txt"); 

参考: https : //stackoverflow.com/a/4342095/3728901

使用此代码查找要打开的文件的路径。

 import java.net.URL; [...] URL url = this.getClass().getResource("/words.txt"); String absoluteDiskPath = url.getPath();