C#格式化小数N与F的区别

C#格式化小数N与F是有区别的,其中格式化N,整数部分从个位开始每三位(千倍)自动增加逗号,而格式化F是没有逗号的。

比如:

double d=12345.6789;

格式化N3的结果字符串为:12,345.679。整数部分从个位开始每三位(千倍)自动增加逗号

格式化F3的结果字符串为:12345.679。没有逗号

示例格式化程序如下:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace NumberFormatDemo
{
    class Program
    {
        static void Main(string[] args)
        {
            double d = 12345.6789;
            string formatN = d.ToString("N3");
            string formatF = d.ToString("F3");
            Console.WriteLine($"格式化为N3,结果为【{formatN}】,是否包含逗号:【{formatN.Contains(",")}】");
            Console.WriteLine($"格式化为F3,结果为【{formatF}】,是否包含逗号:【{formatF.Contains(",")}】");
            Console.WriteLine();

            d = 1.23456789E+3; 
            formatN = d.ToString("N3");
            formatF = d.ToString("F3");
            Console.WriteLine($"格式化为N3,结果为【{formatN}】,是否包含逗号:【{formatN.Contains(",")}】");
            Console.WriteLine($"格式化为F3,结果为【{formatF}】,是否包含逗号:【{formatF.Contains(",")}】");
            Console.WriteLine();

            d = 1.23456789E-6;
            Console.WriteLine(d);
            formatN = d.ToString("N3");
            formatF = d.ToString("F3");
            Console.WriteLine($"格式化为N3,结果为【{formatN}】,是否包含逗号:【{formatN.Contains(",")}】");
            Console.WriteLine($"格式化为F3,结果为【{formatF}】,是否包含逗号:【{formatF.Contains(",")}】");
            Console.WriteLine();

            d = 1.23456789E6;
            formatN = d.ToString("N3");
            formatF = d.ToString("F3");
            Console.WriteLine($"格式化为N3,结果为【{formatN}】,是否包含逗号:【{formatN.Contains(",")}】");
            Console.WriteLine($"格式化为F3,结果为【{formatF}】,是否包含逗号:【{formatF.Contains(",")}】");
            Console.WriteLine();

            d = 68.23450789E0;
            formatN = d.ToString("N3");
            formatF = d.ToString("F3");
            Console.WriteLine($"格式化为N3,结果为【{formatN}】,是否包含逗号:【{formatN.Contains(",")}】");
            Console.WriteLine($"格式化为F3,结果为【{formatF}】,是否包含逗号:【{formatF.Contains(",")}】");
            Console.WriteLine();

            d = 55;
            formatN = d.ToString("N3");
            formatF = d.ToString("F3");
            Console.WriteLine($"格式化为N3,结果为【{formatN}】,是否包含逗号:【{formatN.Contains(",")}】");
            Console.WriteLine($"格式化为F3,结果为【{formatF}】,是否包含逗号:【{formatF.Contains(",")}】");
            Console.WriteLine();

            d = 67890;
            formatN = d.ToString("N3");
            formatF = d.ToString("F3");
            Console.WriteLine($"格式化为N3,结果为【{formatN}】,是否包含逗号:【{formatN.Contains(",")}】");
            Console.WriteLine($"格式化为F3,结果为【{formatF}】,是否包含逗号:【{formatF.Contains(",")}】");
            Console.WriteLine();
            Console.ReadLine();
        }
    }
}

运行如图:

猜你喜欢

转载自blog.csdn.net/ylq1045/article/details/129320685
今日推荐