0

我想说我搜索了很多,甚至 google 和 stackoverflow。有很多关于这个的话题,但我没有找到我真正需要的东西。

我的问题是:

我想定义我自己的包文件夹中的文件。文件的格式是 .txt。文件在 xxx\src\xxxx\myTXTFile.txt 我写这个代码来到达我的txt:

  File f = new File(xxx.class.getResource("pr.txt").getFile());

当我在 netbeans 上运行此代码时,它可以工作。但是当我编译并单击 .jar 文件时,它会报告:

File not found 

我能做些什么?

4

2 回答 2

1

您可以使用以下代码访问您的 txt 文件:

File f = new File("xxxx/myTXTFile.txt");

或者您必须将 txtfile 保存在临时文件夹中:

        InputStream is = getClass().getClassLoader().getResourceAsStream("xxxx/myTXTFile.txt");
        OutputStream os = new FileOutputStream(new File("/tmp/tempTXTFile.txt"));

        while ((i = is.read(buffer)) != -1)
        {
            output.write(buffer, 0, i);
        }

        output.close();

        is.close();

        File f = new File("/tmp/tempTXTFile.txt");
于 2012-11-26T07:58:32.520 回答
1

在 IDE 中,该文件仍然位于 zip 格式的 jar 之外。因此被发现。对于 jar 中的文件,请使用:

OutputStream f = xxx.class.getResourceAsStream("pr.txt");

文件不起作用。

于 2012-11-26T08:19:08.027 回答