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

如何访问jar文件中的资源(Excel文件)

武睿
2023-03-14
问题内容

嗨,我已经将我的Java项目导出为可执行jar文件。在我的项目中,我正在访问包含一些数据的Excel文件。现在,当我尝试访问Excel文件时,我将无法访问它。

我的项目结构是:
Java_Project_Folder
-src_Folder
-resources_Folder(包含Excel文件)


我正在像访问Excel文件

FileInputStream file=new FileInputStream(new File(System.getProperty("user.dir")
+File.separator+"resources"+File.separator+"Excel.xlsx"));

我尝试使用以下方式访问此文件getResourceAsStream

FileInputStream file=(FileInputStream) this.getClass().getResourceAsStream
("/resources/Excel.xlsx");

但是我进入的是空异常。有什么问题可以帮助您吗?


问题答案:

我试过了,它对我有用。

我的Test1类位于默认程序包中,只需检查您访问的类在任何程序包中的位置,然后将其从类路径返回至确切的资源文件夹,例如“ ../”。

public class Test1 {

    public static void main(String[] args) {
        new Test1();  
    }
    Test1(){
        BufferedInputStream file= (BufferedInputStream) this.getClass().getResourceAsStream("resources/a.txt");
        try {
            System.out.println((char)file.read());
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
    }

}


 类似资料:
  • 但我进的是空异常。有什么问题,有人能帮忙吗?

  • 问题内容: 我有一个带有工具栏的Java项目,该工具栏上带有图标。这些图标存储在名为resources /的文件夹中,因此路径可能是“ resources / icon1.png”。该文件夹位于我的src目录中,因此在编译后,该文件夹将被复制到bin / 我正在使用以下代码访问资源。 (imageName将为“ resources / icon1.png”等)。在Eclipse中运行时,效果很好。

  • 我有一个资源文件夹/包在我的项目的根,我"不"想要加载某个文件。如果我想加载某个文件,我会使用class.getResourceAsStream,我会没事的!!我实际上想做的是在资源文件夹中加载一个“文件夹”,循环该文件夹中的文件,并获得每个文件的流,并在内容中读取...假设在运行时之前没有确定文件名...那我该怎么办?有没有一种方法来获得一个文件夹中的文件列表在您的jar文件?请注意,带有资源的

  • 问题内容: 我最近用Slick2D开发了一个游戏,我直接访问了所有图像,例如 与使用将加载资源的类或使用输入流相反。 我想知道是否仍然可以将所有资源加载到jar中,我将该文件夹添加到了我的buildpath中,并使用jarsplice添加了我的库和本机,但是jar无法运行,因为它找不到图像。 问题答案: 正在研究运行应用程序的根文件系统。如果要使用jarfile中打包的资源,则必须执行以下操作:

  • 我正在从主类访问资源文件夹中的文件 我收到了这个错误: 我甚至打开了jar文件,remoteUnitsIdsInOldServer.txt文件就在那里,在类内部