0

我正在尝试以其本机形式呈现整数。我将文化信息设置如下:

CurrentCulture = new CultureInfo(ViewingLanguage.LanguageTag)
{
    NumberFormat = new NumberFormatInfo{DigitSubstitution = DigitShapes.NativeNational}
};

并具有以下功能:

public static string NiceNumber(CultureInfo culture, int number)
{
    return number.ToString(culture);
}

无论文化设置为ar-QAzh-HANS,数字始终以拉丁形式呈现。

如何以原始形式呈现数字?

4

1 回答 1

0

这是我在多语言网络应用程序中做的第一件事。它也应该对你有用。尽管请注意 MSDN 的此评论

CultureInfo.CreateSpecificCulture 方法为中性文化“zh-Hant”(“zh-CHT”)和“zh-Hans”(“zh-CHS”)抛出 ArgumentException。

protected override void InitializeCulture()
{
    if (Request.QueryString["lang"] != null)
    {
        string m_selectedLanguage = Request.QueryString["lang"];
        UICulture = m_selectedLanguage;
        Culture = m_selectedLanguage;

        Thread.CurrentThread.CurrentCulture = CultureInfo.CreateSpecificCulture(m_selectedLanguage);
        Thread.CurrentThread.CurrentUICulture = new CultureInfo(m_selectedLanguage);
    }

    base.InitializeCulture();
}
于 2015-09-04T13:28:41.413 回答