Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/295.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何格式化没有分隔符和小数的十进制数?_C# - Fatal编程技术网

C# 如何格式化没有分隔符和小数的十进制数?

C# 如何格式化没有分隔符和小数的十进制数?,c#,C#,如何将十进制格式转换为不带组分隔符和小数的字符串 例如:“1234.56”应显示为“1234”。这几乎可以工作,但四舍五入: Decimal d = 1234.56M; string s = string.Format("{0:0}", d); Console.WriteLine(s); 输出:1235 正如@Jon Skeet所建议的,您可以强制转换为整数类型(假设它足够大,可以容纳您的最大十进制值): 输出:1234 演示:我不明白你为什么不能只用演员阵容。我认为Int不会显示逗号(,)。

如何将十进制格式转换为不带组分隔符和小数的字符串


例如:“1234.56”应显示为“1234”。

这几乎可以工作,但四舍五入:

Decimal d = 1234.56M;
string s = string.Format("{0:0}", d);
Console.WriteLine(s);
输出:
1235

正如@Jon Skeet所建议的,您可以强制转换为整数类型(假设它足够大,可以容纳您的最大十进制值):

输出:
1234


演示:

我不明白你为什么不能只用演员阵容。我认为Int不会显示逗号(,)。但无论如何,这应该能起到作用:

        float n = 1234.78f;
        int i = (int)n;
        String str = i.ToString();
        while (str.IndexOf(",",0) >= 0 )
            str = str.Remove(str.IndexOf(",", 0), 1);

你能先转换成
int
吗?(让它显示为1235,即四舍五入,相当容易。只截断格式字符串不是)或者如果
long
太小(值得怀疑,但嘿!你永远不知道!)
        float n = 1234.78f;
        int i = (int)n;
        String str = i.ToString();
        while (str.IndexOf(",",0) >= 0 )
            str = str.Remove(str.IndexOf(",", 0), 1);