1

在我当前的项目中,iOS 应用程序将根据位置使用不同的数据库。该数据库是原始 SQL,因此每个数据库都表示为一个数据库文件,并通过创建与数据库的连接来进行查询。

我知道这可以使用 *.lproj 文件夹来实现,如果是这样,我对加载和使用相应数据库的最推荐方式感兴趣。

在搜索网络时,我考虑过使用 DatabaseHelper 类,该类管理数据库并包含一个 NSLocale 实例,该实例使用

- (void) initWithLocale {
  [super init];
  locale = [NSLocale currentLocale];
}

这可以用来确定要加载哪个数据库,还是有更好的方法呢?

提前致谢。

4

1 回答 1

2

如果您使用本地化,我认为这很简单。

在您的本地化.strings文件上。为每个数据库文件名添加键和值。

例如:英语

"my db" = "englishdb.sqlite";

西班牙语_

"my db" = "spanishdb.sqlite";

无论您在何处访问数据库名称,请使用:

NSString *dbName = NSLocalizedString(@"my db", @"");

如果您使用的[NSLocale currentLocale];是最好的方法是添加a 的database names as valueand并根据语言环境从该 plist 中获取数据库名称。locale names as keyplist

于 2013-05-27T13:55:05.947 回答