iOS - 将 NSDictionary 写入 Localizable.strings

Abd*_*tou 3 iphone xcode localization ios

这个问题是那个问题的延续:iOS - 我可以在运行时更改 localizable.strings 内容吗?

答案很有用,但是,我面临着一个问题。打印的字符串不包括单字键和/或值的引号(如这些“”)。这使得 Localizable.string 文件无效。因此,即使对于具有正确格式的键/值,也不会从中检索任何内容。

例子:

英镑 = 英镑;词汇表 = 词汇表;"Go_Location" = "前往位置";

前两个导致文件成为无效的字符串文件。如何解决?

小智 5

使用 NSDictionary 的

- (NSString *)descriptionInStringsFileFormat;
Run Code Online (Sandbox Code Playgroud)

然后使用适当的编码将结果字符串写入文件:

NSString* strings = [dict descriptionInStringsFileFormat];
[strings writeToFile: @"Localizable.strings" atomically: YES  encoding: NSUTF16StringEncoding  error: nil];
Run Code Online (Sandbox Code Playgroud)

(显然,添加您需要的任何错误检查)。