android如何获取assets文件夹下面文件的大小
现在想做一个读取assets下文件同时,知道读取的“进度”。但是前提是得知道文件大小,最好是多少行,因为我前面是按行读取的。文件比较多比较大,如果不再次利用流写一遍,还有...
现在想做一个读取assets下文件同时,知道读取的“进度”。但是前提是得知道文件大小,最好是多少行,因为我前面是按行读取的。文件比较多比较大,如果不再次利用流写一遍,还有没有其他办法?
展开
2个回答
推荐于2016-01-21
展开全部
InputStream in = getResources().getAssets().open(fileName);
//获取文件的字节数
int lenght = in.available();
//获取文件的字节数
int lenght = in.available();
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
我觉得按行读取进度必定不准确,还是改成用流来读取;用 progressBar来实现进度现实就可以了。
追问
是用流读取的呢。用流读取怎么的进度怎么和progressBar绑定?
(将流InputStream 封装成BufferedReader )然后利用BufferedReader 按行读取
追答
readline无法控制读取进度,用BufferReader.read(),设置一个缓存1k-4k,然后循环读取。
ex:
byte[] buff = new byte[1024];
int len;
while ((len = in.read(buff)) > 0) {
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询