gpt4 book ai didi

.net - 如何在 .NET 中获得本地化的标点规则?

转载 作者:行者123 更新时间:2023-12-04 05:45:22 27 4
gpt4 key购买 nike

.NET Framework 有各种各样的类来处理特定于文化的问题,例如数字或日期格式。我想知道标点符号是否有这样的东西。

例如,在英语中是 :位于它所跟随的单词之后,如

Example:



然而,在法语中,它将是

Exemple :



大多数欧洲语言使用 .来标记一个句子的结尾。但是中文是 .对于从一种语言到另一种语言可能不同的引用字符也是如此。我很有希望在 TextInfo 中找到一些东西类或在 System.Globalization命名空间,但没有运气。

所以我想知道这样的东西是否在 .NET Framework 中原生存在,或者是否有任何第三方库隐藏在处理此类问题的地方。我找不到任何。我使用的是 C# 4.0,但我猜这个问题对于 .NET 支持的所有语言都是一样的。

仅供引用,当我想显示一些与文化无关的字符串时遇到了这个问题,后跟一些数字信息,如下所示:
string.Format("{0}: {1}", this.nameOfAGuy, this.quantityAssociatedWithTheGuy);

英语可以,但法语不行。

最佳答案

System.Globalization命名空间不包括标点规则。标点符号确实是语言规则的一部分(与语法一起),而全局化命名空间更多地是关于国家标准的。

我不知道它是否有很大帮助,但是您展示的示例可以通过常规本地化解决。您可以——而且应该——在资源中包含格式字符串(显然只有那些用于构建显示文本的字符串),以便本地化人员不仅可以更改标点符号,还可以更改任何其他必要的内容(另一个示例是子字符串的顺序,在某些语言中可能需要颠倒)。

string.Format(MyResources.FormatNameAndAssociatedQuantity, this.nameOfAGuy, this.quantityAssociatedWithTheGuy);

此字符串的英文版本为 "{0}: {1}"及其法语本地化 "{0} : {1}" (冒号前有一个空格)。

关于.net - 如何在 .NET 中获得本地化的标点规则?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10749030/

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