flutter - 使用json在flutter本地化中管理复数/性别
问题描述
我正在使用颤振/飞镖开发移动应用程序。该应用程序需要使用 JSON 文件进行本地化。
我需要处理字符串中的复数/性别。实际上我正在使用 sprintf 库,在 JSON 代码中有一些占位符,例如:
{
...
"vehiclelabelKmTraveledReadable": "In %s Km",
...
}
所以我用变量值替换了 '%s' 占位符。
问题是如何处理复数,比如
{
"vehiclePeriod": "Every %s month(s?)"
}
但是如果 %s 是 1,那就错了。有人知道如何处理这种情况吗?
解决方案
我使用来自 Flutter 的 intl 包管理这种情况,但它使用 .arb 文件而不是 .json。
这是一个如何使用intl包处理它的示例
Intl.plural(howMany,
zero: "$howMany An",
one: "$howMany An",
other: "$howMany Ans",
name: 'dogYearsOld',
locale: localeName,
args: [howMany]);
希望这可以帮助您入门。
推荐阅读
- haskell - 在 Haskell 中打印自定义四叉树的建议方法?
- reactjs - 我如何设置 react-facebook-login 按钮的样式?
- security - Flush & Reload 缓存侧通道攻击
- python - Google Admin Directory SDK中的用户观看功能,突然抛出错误参数投影异常
- windows - 如何将 I18N 支持添加到由 MSIX 打包工具包制作的设置文件
- php - smtp 适用于 cli,但不适用于 php 脚本
- amazon-web-services - S3 公共访问替代方案
- ios - 带有 CloudKit 的 CoreData:模型迁移后,一切都重复了
- css - CSS 文件和图像未在移动浏览器 Laravel 中加载
- python - 如何使 NFC 标签只读?