我最近一直在处理文件。我想知道URI和File之间有什么区别。基本上在代码中:
List<Uri> uris = new ArrayList<>();
for (Uri uri : uris
) {
Bitmap bitmap = BitmapFactory.decodeFile(uri.getPath());
}
for (File file : listOfImageFiles
) {
Bitmap bitmap = BitmapFactory.decodeFile(file.getPath());
}
哪个更快?哪个推荐使用?我需要它来存储它们在存储上的路径,然后将这些路径保存到字符串。
答案 0 :(得分:3)
与从磁盘读取数据所花费的时间相比,速度差异可忽略不计 - 差异将以纳秒为单位,读取数据需要几毫秒。您使用URI而不是文件的原因是,如果您要表示可能不在文件系统上的数据 - 它可能属于ContentProvider或存在于远程服务器上。如果是这种情况,请使用URI。如果您知道并非如此,请使用文件。