android file assets,关于Android Assets读取文件为File对象
关于Android Assets读取文件为File对象
关于Android Assets读取文件为File对象的问题,在Assets里面放置文件,在使用的时候,一般是使用AssetManger对象,open方法获取InputStream,然后进行其他操作.
这里遇到了这样需求,直接把Assets里面文件读取为一个File对象,找了半天,没有找到这样方法,搜索了很久,发现这样是行不通的.是不能直接从asset获取然后直接转换为File对象的,因为asset被存储为apk中,除非你解压Apk文件,一般是不能找到一个Path实例化一个File对象的,这里也有特殊情况,webview可以根据asset的路径加载在asset存放的.html文件:
WebView wv = new WebView(context);
wv.loadUrl("file:///android_asset/help/index.html");
如果需要一个File的时候,需要从新拷贝一份,把File存储在设备上,然后再使用。
public static void writeBytesToFile(InputStream is, File file) throws IOException{
FileOutputStream fos = null;
try {
byte[] data = new byte[2048];
int nbread = 0;
fos = new FileOutputStream(file);
while((nbread=is.read(data))>-1){
fos.write(data,0,nbread);
}
}
catch (Exception ex) {
logger.error("Exception",ex);
}
finally{
if (fos!=null){
fos.close();
}
}
}
或者直接InputStream转换为String,然后执行其他操作.
AssetManager am = getActivity().getAssets();
InputStream inputStream = am.open("chapter1/ObservableVSIterator.java");
String json = null;
try {
int size = inputStream.available();
byte[] buffer = new byte[size];
inputStream.read(buffer);
inputStream.close();
json = new String(buffer, "UTF-8");
} catch (IOException ex) {
ex.printStackTrace();
return null;
}
时刻怀有一颗虔诚之心,乐于分享。知识才更有意义。
本文由 创作,采用 知识共享署名4.0 国际许可协议进行许可。本站文章除注明转载/出处外,均为本站原创或翻译,转载前请务必署名。最后编辑时间为:
2021/01/12 09:26
android file assets,关于Android Assets读取文件为File对象相关推荐
- android 从assets和res中读取文件(转)
1. 相关文件夹介绍 在Android项目文件夹里面,主要的资源文件是放在res文件夹里面的.assets文件夹是存放不进行编译加工的原生文件,即该文件夹里面的文件不会像xml,java文件被预编译, ...
- Android从assets和res中读取文件
1. 相关文件夹介绍 在Android项目文件夹里面,主要的资源文件是放在res文件夹里面的.assets文件夹是存放不进行编译加工的原生文件,即该文件夹里面的文件不会像xml,java文件被预编译, ...
- android 读取usb 文件,android开发:手机连接电脑读取文件
满意答案 pretty_102 2013.05.16 采纳率:47% 等级:10 已帮助:967人 展开全部 一.打开手机USB调试模式 打开手机系统设置:[菜单(menu)]->[设置] ...
- pytorch构造IterableDataset,流式读取文件夹,文件夹下所有大数据文件,逐个文件!逐行读取!(pytorch Data学习四)
我有个文件夹,里面有一万个文件,每个文件都是N个T的容量,那么这就需要逐个文件.逐行读取,读取方法如下: 核心:构造IterableDataset IterableDataset需要设置两个东西,一个 ...
- C++/Php/Python/Shell 程序按行读取文件或者控制台方法总结。
C++/Php/Python/Shell 程序按行读取文件或者控制台方法总结. 一.总结 C++/Php/Python/Shell 程序按行读取文件或者控制台(php读取标准输入:$fp = fope ...
- electron 读取文件夹内容_如何使用Electron Framework选择,读取,保存,删除或创建文件...
本文概述 为了处理文件(CRUD)的生命周期, 我们将使用对话框和文件系统组件. 对话框模块提供了用于显示本机系统对话框(例如打开文件或警报)的API, 因此Web应用程序可以提供与本机应用程序和No ...
- Golang——文件创建和写入、OpenFile追加写入、Open读取文件、ReadBytes缓冲区读取、os.Args、flag
Create创建文件: os.Create:文件不存在则创建,文件存在则删除文件中的内容 语法: file:创建文件的指针 err:创建文件出现异常后的信息file, err := os.Create ...
- java中打开特定编码的文本_指定编码写入和读取文件内容
为了完美解决你的问题,特分享我自己的FileKit.java工具给你. 你只需要使用createFile方法,传入一行一个的List对象就可以生成了,目录不存在这些都判断了,只要你的目录可写就行了. ...
- java之的读取文件大全
2019独角兽企业重金招聘Python工程师标准>>> java之的读取文件大全 使用java进行文件读写,因为使用的频率不高,加上写起来也没那么简单,经常容易忘记,然后就得去翻阅以 ...
- java读取文件到字符串_Java读取文件到字符串
java读取文件到字符串 Sometimes while working with files, we need to read the file to String in Java. Today w ...
最新文章
- javascript数组集锦
- php页面最大执行时间 set_time_limit函数不起作用
- 42.虚拟内存如何设置:
- 关于ARP、MAC、IP欺骗以及TCP劫持
- python入门——条件语句、for、while循环4
- 关于mysql的error-based injection payload
- linux系统的4个部分,以下是Linux文件系统的4个相关的结构定义中的一部分: Struct i..._考试资料网...
- .NET系统架构改造的经验和教训
- linux看火狐的安装目录,linux下firefox+geckodriver环境搭建
- 算法导论 思考题2-4
- 月薪3k和30k的程序员,差距就在这道坎...
- 用css实现文本不换行切超出限制时显示省略号(小tips)
- Hive 窗口函数lead、lag
- access和filemaker_四个替代微软Access的开源产品
- python返回类型为anytype_python - Zeep的SOAP请求(Python) - 堆栈内存溢出
- html背景音乐自动播放embed,HTML中添加音乐video embed audio
- 关于爆仓那些事,出现爆仓就是黑平台?
- xlive.dll缺失怎么办
- php网页编程,学习掌握动态网页PHP的编程语句
- 0057-在OpenCV环境下使用KNN背景建模提取前景目标
热门文章
- 霹雳吧啦Wz语义分割学习笔记P7
- 计算机Excel运行环境,Excel2007免费完整版 最新电脑版
- python生成10个随机密码_python生成10个随机密码
- 那些年我们一起追过的稀奇古怪的SQL
- 从程序员到项目经理(28):该死的结果导向(只看结果,不问过程到底行不行?)
- html怎么唤起虚拟键盘,电脑虚拟键盘怎么打开?电脑虚拟键盘打开五大方法介绍...
- JAVA 开发规范
- centOS brctl 创建透明网桥
- 离开互联网公司的年轻人,按下人生的重启键
- Armbian安装Docker之后的100种玩儿法《动态域名解析DDNS自动更新》