.net - 如何使用 .NET 中的当前区域性将整数转换为字符串?

标签 .net localization globalization

如何在 .NET 中将整数转换为本地化字符串?

示例:

Int64 value = 12345678901;

value.ToString();  
   // returns "12345678901", should be "123,4567,8901"

value.ToString(CultureInfo.CurrentCulture);  
   // returns "12345678901", should be "123,4567,8901"

value.ToString(CultureInfo.CreateSpecificCulture("en-US")) 
   // returns "12345678901", should be "12,345,678,901"

value.ToString(CultureInfo.CreateSpecificCulture("fr-CH"))
   // returns "12345678901", should be "12'345'678'901"

value.ToString(CultureInfo.CreateSpecificCulture("te-IN"))
   // returns "12345678901", should be "12,34,56,78,901"

如何在 .NET 中将整数(或浮点数)转换为本地化字符串?

奖金喋喋不休

世界上独一无二的数字格式列表:
  • 12 345 678 901
  • 12,34,56,78,901
  • 12,345,678,901
  • 12.345.678.901
  • 12?345?678?901
  • 123,4567,8901
  • 12'345'678'901

  • 可以在 .NET 中找到这些文化设置的其他奖励信息:
    CultureInfo.CreateSpecificCulture("en-US").NumberFormat.NumberGroupSizes = { 3 }
    CultureInfo.CreateSpecificCulture("en-US").NumberFormat.NumberGroupSeparator = ","
    
    CultureInfo.CreateSpecificCulture("te-IN").NumberFormat.NumberGroupSizes = { 3, 2 }
    CultureInfo.CreateSpecificCulture("te-IN").NumberFormat.NumberGroupSeparator = ","
    
    CultureInfo.CreateSpecificCulture("te-IN").NumberFormat.NumberGroupSizes = { 3 }
    CultureInfo.CreateSpecificCulture("te-IN").NumberFormat.NumberGroupSeparator = "'"
    

    最佳答案

    使用精度为 0 的“N”standard format specifier

    using System;
    
    class Test
    {
        static void Main() 
        {
            long value = 12345678901;
            string text = value.ToString("N0");
            Console.WriteLine(text);
        }
    }
    

    结果(在我的英国机器上):
    12,345,678,901
    

    这将在各个方面考虑当前的文化。当然,您可以单独指定一种文化。

    编辑 :特定文化的通用形式:
    value.ToString("N0", CultureInfo.CreateSpecificCulture("fr-CH"));
    

    关于.net - 如何使用 .NET 中的当前区域性将整数转换为字符串?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8333208/

    相关文章:

    c# - Excel: boolean 值的本地名称c#

    ionic-framework - 无法使用 ionic 2.2.0 进行 npm 安装全局化,未满足依赖项

    c# - 为什么 Fiddler 的 Http 请求非常快

    c# - 传入 CSV Excel 工作表的选项卡名称

    c# - 拔下网线时 socket 会发生什么情况?

    c# - 如何在 C# 中按国家/地区获取语言

    sql - Oracle NLS_SORT 无法通过 ALTER SESSION 工作?

    .net - 在 GAC 中有 2 个版本的 MySql.Data 程序集有问题吗?

    asp.net-mvc - 如何本地化枚举并使用类似于 Html.SelectListFor<T> 的内容

    android - 从自定义 View 接收日文键盘输入