gpt4 book ai didi

c# - CultureInfo.CurrentCulture 在 String.Format() 中真的有必要吗?

转载 作者:IT王子 更新时间:2023-10-29 04:18:06 26 4
gpt4 key购买 nike

您认为如何真正有必要在方法 String.Format(string, object) 中提供 IFormatProvider

是不是写完整变体比较好

String.Format(CultureInfo.CurrentCulture, "String is {0}", str);

或者只是

String.Format("String is {0}", str);

?

最佳答案

一般来说,如果要以独立于当前用户区域性的方式(例如在注册表中或文件中)持久保存要生成的字符串,则需要使用 InvariantCulture。

您需要将 CurrentCulture 用于要在 UI 中呈现给当前用户(表单、报告)的字符串。

如果在本应使用 InvariantCulture 的地方使用 CurrentCulture,则可能会出现细微错误:只有当具有不同文化的多个用户访问同一注册表项或文件,或者用户更改其默认文化时,这些错误才会出现。

显式指定 CurrentCulture(如果省略 IFormatProvider 参数,则为默认设置)本质上是一种文档,用于证明您已考虑上述内容,并且正在生成的字符串应使用当前用户的文化。这就是 FxCop 建议您指定 IFormatProvider 参数的原因。

关于c# - CultureInfo.CurrentCulture 在 String.Format() 中真的有必要吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/475383/

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