java - java读取jar内的文件

标签 java file text jar loading

我遇到的情况是,我有一个 txt 文件和一个 java 文件捆绑在 jar 内。我正在从 java 读取 txt 文件,该文件仅捆绑在 jar 内。

在读取文件时,在 Java 中获取 FileNotFoundException ,并且 txt 文件位于 jar 内捆绑的同一文件夹中。

我从测试类示例代码中调用此 Java 方法。

public static void loadtxtfile(){

    try {  
        InputStream in = 
            Utils.class.getClassLoader().getResourceAsStream("sample.txt");


         File f = new File(JetUtils.class.getClassLoader().getResource("dd.js").getFile());
         //OJetBase.class.getClassLoader().getResourceAsStream("logging.properties");

          BufferedReader input = new BufferedReader(new FileReader(js_filepath));
          StringBuffer buffer = new StringBuffer();

          while ((text = input.readLine()) != null)
              buffer.append(text + "\n");
          java_script = buffer.toString();
}

测试调用 - Utils.loadtxtfile();

我尝试了所有选项。

最佳答案

您无法从 jar 文件中将资源作为 java.io.File 对象读取,因为它们不存在于文件系统中。只需使用 java.lang.Classloader.getResourceAsStream(String name) :

Reader inputStreamReader = new InputStreamReader(
                JetUtils.class.getClassLoader().getResourceAsStream("dd.js"));
BufferedReader jsReader = new BufferedReader(inputStreamReader);

StringBuilder javascript = new StringBuilder();
String input;
while ((input = jsReader.readln()) != null) {
    javascript.append(input);
}

关于java - java读取jar内的文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29542080/

相关文章:

java - 在发布camelContext后得到响应

java - 在 Android 中从 URI 获取文件路径时出错

python - 如何使用 IPWhois 解析 python 中的文本

CSS - 渐变文本阴影

java - Sonar :sonar work?如何

java - 在 Java 中清除数据报缓冲区

java - 如何在保持输入流打开以获得结果的同时关闭 Java 套接字输出流?

iPhone 应用程序支持文件夹包含构建前的文件

Java - 性能问题;变量名和文件名长度

python - 如何用 BeautifulSoup 只抓取可见的网页文本?