当前位置: 首页 > 面试题库 >

从项目目录内的文件夹中读取文件

巫马翰翮
2023-03-14
问题内容

在一个JSP项目中,我正在从目录中读取文件。如果我给出完整路径,那么我可以轻松读取文件

BufferedReader br = new BufferedReader(new FileReader("C:\\ProjectFolderName\\files\\BB.key"));

但是我不想写完整的路径,我只想给包含文件的文件夹名称,例如波纹管。

BufferedReader br = new BufferedReader(new FileReader("\\files\\BB.key"));

这个怎么做?

String currentDirectory = new File("").getAbsolutePath();
System.out.println(currentDirectory);
BufferedReader br = new BufferedReader(new FileReader(currentDirectory + "\\files\\BB.key"));

我尝试了上面仍然无法从文件中读取

打印行给出以下输出

信息:C:\ Program Files \ NetBeans 7.3


问题答案:

采用

File file = request.getServletContext().getRealPath("/files/BB.key");

这会将相对的URL路径(因此为“ /”)从Web内容目录转换为文件系统File。

对于可移植的Web应用程序,要知道文件位于Windows Latin-1中,则应明确声明其编码,否则,将提供主机程序的默认OS编码。

BufferedReader br = new BufferedReader(new InputStreamReader(
        new FileInputStream(file), "Windows-1252"));

如果文件存储为资源,则还可以在/ WEB-INF / classes /下使用

BufferedReader br = new BufferedReader(new InputStreamReader(
        getClass().getResourceAsStream("/files/BB.key"), "Windows-1252"));

在这种情况下,文件将位于/WEB-INF/classes/files/BB.key下。



 类似资料:
  • 我想通过使用“文件类”从项目文件夹中获取文件,我如何做到这一点?

  • 问题内容: 我想使用“文件类”从项目文件夹中获取文件,我该怎么办? 问题答案: 嗯,有很多不同的方法来获取Java文件,但这是一般要点。 不要忘记,您至少需要将其包装在a 中,因为File是其中的一部分,这意味着它必须具有try-catch块。 不是要解决Ericson的问题,而是如果您使用的是实际的软件包,则除非明确使用文件的位置,否则文件的位置将有问题。相对路径与Packages混为一谈。 即

  • 我正在尝试从子项目中读取文件示例-dfx-sbi 文件位于src/main/resources文件夹内 那为什么文件没有加载呢?

  • 如果文件位置是资源文件夹,下面的代码工作正常,但是当文件位置在项目目录之外时,比如(c:\file.json),它就失败了。我们如何从项目目录之外加载文件。

  • 问题内容: 我坚信这只是一种语法-但是我不知道为什么我的代码: 将无法正常工作-它显然可以进入“ testfilefolder”文件夹,并告诉我该文件在那里,即未找到错误消息“ file2.txt”。因此它可以找到它来告诉我找不到它… 但是,我得到了这段代码: 奖金-这是做我想做的事情的好方法吗(从文件中读取并计算单词的出现频率)?这是我使用Python的第一天(尽管我有很多编程经验。) 我必须说

  • 我有一个项目来解析一个大文件中的一些信息。 结构如下: 当我根据自己的想法运行应用程序时,我可以通过以下方式读取文件: 然后,如果我运行: 一切顺利。 即使在生成GraalNative jar并从本机generate jar运行应用程序时: 这一切都很好。 但是,当我运行命令来构建和运行docker时,我得到了我的错误: 有人能帮我吗?如何读取Docker容器上src/main/Resources

  • 问题内容: 我需要从Java WAR应用程序的类路径中读取文本文件。如何将其读取为InputStream。文件位于/ WEB-INF / classes /文件夹中,但是当我使用以下代码时,它仅返回null。 问题答案: 在其前面加上正斜杠以表示类路径的根: 或者,您可以使用来查找相对于上下文根的资源。因此,类将是。

  • 问题内容: 我正在尝试从文件中加载图像而不使用。这些文件夹是: 我想将图像加载到资产文件夹中。我试过了: 我已经尝试过使用字符串路径“ /TestProject/assets/drawIcon.png”,但是什么也没有。我不知道如何加载该图片! 问题答案: 将目录设置为资源目录,然后从“ /drawIcon.png”位置将图像加载为资源: 如果要创建javafx图像: 在这种情况下,也请将该文件夹