【问题标题】:Can't read resources files from apk无法从 apk 读取资源文件
【发布时间】:2011-10-12 23:02:56
【问题描述】:

我的应用程序包含一些需要读取的 .txt 文件。

我曾经使用 Inputstream 来阅读它们:

Class c = this.getClass();
   InputStream is = c.getResourceAsStream("/fileName.txt");

出于效率原因,我需要使用 RandomAccessFile 阅读它们。

因为我不能使用 c.getResourceAsStream() 我需要找到另一种方法来获取文件。

我尝试了以下代码:

Class c = this.getClass();
URL fileURL = c.getResource("/fileName.txt");
File file =new File(fileURL.getPath());

File file =new File(fileURL.toURI());

但无法找到该文件。

我认为我缺少一些基本的东西,有人可以帮助我吗?

【问题讨论】:

    标签: android file-io resources inputstream


    【解决方案1】:

    您最初的文件在哪里?是在原始文件夹,资产文件夹...?

    【讨论】:

    • 把它移到assets文件夹里面,像InputStream is = this.getAssets().open("fileName.txt");一样打开
    【解决方案2】:

    只是想在这里添加更多细节来解释为什么File file =new File(fileURL.getPath()); 不起作用。应用程序中的所有内容都包含在 .akp 文件中,该文件只是一个重命名的 .zip 文件。这意味着当您的应用程序从资产目录请求文件时,该路径中实际上不存在文件。使用 InputStream is = this.getAssets().open("fileName.txt"); 将打开 apk 并查看那里。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-06-07
      • 1970-01-01
      • 2018-11-12
      • 1970-01-01
      • 2021-12-31
      • 2014-10-26
      • 2016-06-17
      • 1970-01-01
      相关资源
      最近更新 更多