java - getResourceAsStream 在尝试检索 JSON 文件时使用 android 返回 null

标签 java android android-studio

尝试将 in 分配给 Android Studio 中的文件 credentials.json 但是当我尝试打印 in 以检查该值时不是 null 它返回 null

InputStream in = getClass().getClassLoader().getResourceAsStream("/raw/credentials.json");

项目结构是:

app
   |-src
      |main
          |java
               |com.appProject
                              |myClass
          |res
              |raw
                  |credentials.json 

该文件是从名为 myClass 的主要 Activity 之外的类调用的。

要么我需要一种不同的方法从 json 文件中获取流,要么我的文件路径完全错误

编辑

给出的答案是正确的,但在您的应用程序中正确设置 context 也很重要,因为我犯了一个错误,没有将其正确设置到 MainActivity

最佳答案

这不是您在 Android 中访问原始资源的方式。

要获取原始资源上的 InputStream,您可以使用 Context,例如您的 Activity:

context.getResources().openRawResource(R.raw.credentials);

关于java - getResourceAsStream 在尝试检索 JSON 文件时使用 android 返回 null,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53687298/

相关文章:

java - 如何让两个 float 操作按钮不相互重叠?

android - 我想在对话框 fragment 中设置最大高度

java - ANR 输入超时

android - 如何在 Android Studio 编写的项目中使用自定义字体

java - 如何使用非空字段实现 "complete later"功能?

java - 如何在gradle中创建文件集合的集合?

java - 在spring bean中处理xml配置文档

java - 在 java 构建路径中引用错误的 jar 文件

安卓新拨出电话

android - 可以在同一台机器上安装两个不同版本的Android Studio吗?