java - 资源$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 Project
,Invalidate cache and restart
重命名,复制文件,没有什么可以帮助我。
解决方案
你试试这个
使用它来访问文件:
getResources().getIdentifier("template","raw", getPackageName());
然后打开文件内容或创建一个文件形式,你需要一个输入流,这将像这样工作:
InputStream ins = getResources().openRawResource(
getResources().getIdentifier("template", "raw", getPackageName()));
注意:我假设你在一个上下文中。其他明智context.
的使用代码。
推荐阅读
- amazon-web-services - 如何在 Step 函数的 GetHistoryExecution 中使用 nextToken?
- xamarin.forms - Xamarin 为 Mac 干净命名空间问题形成 Visual Studio
- python - 如果逗号不在括号之间,则以逗号分隔,同时允许字符在括号外并以相同的逗号分隔
- php - Laravel POST 请求 Cors No 'Access-Control-Allow-Origin'
- ios - Swift - 以 PDF 格式加载时质量不佳的图像 - 使用 TPPDF
- php - 我现有的 Wordpress 计数器的总访客计数器
- javascript - 如何将参数传递给事件侦听器中的函数
- c# - 四边形交点 4 点
- kubernetes - 如何通过 ssh 进入 Traefik pod?
- apache-spark - 启用 Hive Regex Column 支持后,Spark SQL 无法与 Hive View 一起使用