0

我正在编写一个 Android 应用程序,它会在启动时填充地图,然后在完成后将其保存到文件中。但是,由于该文件可能需要长达 10 秒的时间来检索,我想知道如何在再次获取文件之前检查该文件是否存在,如果确实存在,只需将其加载到 Map 对象中。

private Map<String, String> idMap;

如果有更好的方法来保存这张地图,请告诉我。

(这是用作字典的一种形式)

Key: Corona
Value: 172

Key: Beer
Value: 199

让我知道您是否需要更多信息。

4

1 回答 1

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 文件中。它也是线程安全的并且可以快速阅读。

于 2012-08-21T22:16:36.083 回答