gpt4 book ai didi

ios - Swift:使用 Localizable.stringsdict 的本地化字符串中的千位分隔符

转载 作者:行者123 更新时间:2023-11-28 14:13:09 26 4
gpt4 key购买 nike

我尝试使用 Localizable.stringsdict 在 swift 应用程序中处理复数形式。

到目前为止一切正常,但大数字没有千位分隔符。有没有办法得到这样的结果:

1 new Continent
1,000 new Continents

此刻我得到

1 new Continent
1000 new Continents

这是 Localizable.stringsdict 文件的开头

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>WNC_NewContinents</key>
<dict>
<key>NSStringLocalizedFormatKey</key>
<string>%#@Variable@</string>
<key>Variable</key>
<dict>
<key>NSStringFormatSpecTypeKey</key>
<string>NSStringPluralRuleType</string>
<key>NSStringFormatValueTypeKey</key>
<string>d</string>
<key>zero</key>
<string>%d new Continents</string>
<key>one</key>
<string>%d new Continent</string>
<key>other</key>
<string>%d new Continents</string>
</dict>
</dict>

这是我使用的 Swift 代码

   var bodyText: String = ""
let item1 : Int = 1
let item1000 : Int = 1_000

let format = NSLocalizedString("WNC_NewContinents", comment: "")

bodyText += String.localizedStringWithFormat(format, item1)
bodyText += "\n"
bodyText += String.localizedStringWithFormat(format, item1000)

最佳答案

这个怎么样:

let s = String(format: format, locale: Locale.current, arguments: [item1000])
print(s) //1,000 new Continents

(语言环境确实会更改数字格式。)

给定字典:

<dict>
<key>WNC_NewContinents</key>
<dict>
<key>NSStringLocalizedFormatKey</key>
<string>%#@variable@</string>
<key>variable</key>
<dict>
<key>NSStringFormatSpecTypeKey</key>
<string>NSStringPluralRuleType</string>
<key>NSStringFormatValueTypeKey</key>
<string>d</string>
<key>zero</key>
<string>new Continents</string>
<key>one</key>
<string>%d new Continent</string>
<key>other</key>
<string>%d new Continents</string>
</dict>
</dict>

这是它在 Playground 上的表现:

1000

关于ios - Swift:使用 Localizable.stringsdict 的本地化字符串中的千位分隔符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52365332/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com