首页 > 解决方案 > 资源$NotFoundException。无法从 /res/raw 打开 PDF

问题描述

告诉我。res /raw /template.pdf 中有一个资源。Pdf 打开,可以工作,但是当您尝试从应用程序打开时:

AssetFileDescriptor descriptor = context.getResources().openRawResourceFd(R.raw.template);

我得到错误:

android.content.res.Resources$NotFoundException: File res/raw/template.pdf from drawable resource ID #0x7f0e0000

我试图这样打开(我仍然得到同样的错误):

AssetFileDescriptor descriptor = context.getResources().openRawResourceFd(context.getResources().getIdentifier("template", "raw", context.getPackageName()));

该怎么办?

我做了Clean and Rebuild ProjectInvalidate cache and restart重命名,复制文件,没有什么可以帮助我。

标签: javaandroidpdf

解决方案


你试试这个

使用它来访问文件:

getResources().getIdentifier("template","raw", getPackageName());

然后打开文件内容或创建一个文件形式,你需要一个输入流,这将像这样工作:

InputStream ins = getResources().openRawResource(
            getResources().getIdentifier("template", "raw", getPackageName()));

注意:我假设你在一个上下文中。其他明智context.的使用代码。


推荐阅读