我正在编写一个Android应用程序,在启动时填充Map,然后在完成后将其保存到文件中。但是,由于此文件最多可能需要10秒才能检索,因此我想知道如何在再次获取文件之前检查文件是否存在,如果文件确实存在,只需将其加载到Map对象中即可。
private Map<String, String> idMap;
如果有更好的方法可以保存此地图,请告诉我。
(这意味着用作字典形式)
Key: Corona
Value: 172
Key: Beer
Value: 199
如果您需要更多信息,请与我们联系。
答案 0 :(得分:1)
您可以使用File.exists()
方法检查文件是否已存在:
File mapFile = new File(PATH_TO_MAP_FILE);
if (mapFile.exists() && mapFile.isFile()) {
// Load from file
} else {
// Create the map the slow way
}
至于替代方案,如果您只是存储键值对,则可能需要考虑使用SharedPreferences
来存储值,而不是实现自己的解决方案。它会将键和值(多种类型)保存到XML文件中。它也是线程安全的,读取速度快。