C# 如何在自定义数字格式字符串中指定按100的比例缩小?

C# 如何在自定义数字格式字符串中指定按100的比例缩小?,c#,string-formatting,number-formatting,C#,String Formatting,Number Formatting,如何在自定义数字格式字符串中指定按100的比例缩小 我需要将一个数字缩小100(类似于“,”操作符所做的,将其缩小1000) 我如何做到这一点 我需要把数字除以100,而不仅仅是逗号 如果我有一个号码123456.78,我需要输出为1234.5678 你在错误的地方做这件事。您应该在转换为字符串之前执行此操作 如果不使用千位分隔符进行格式化,则可能会作弊,只需找到字符串中的小数点并向右移动两个字符(假定它不是0.2345!) 脆弱,反直觉,注定会让你在未来看起来像一个完整的瓦利。除非你有铁一般的

如何在自定义数字格式字符串中指定按100的比例缩小

我需要将一个数字缩小100(类似于“,”操作符所做的,将其缩小1000)

我如何做到这一点

我需要把数字除以100,而不仅仅是逗号


如果我有一个号码123456.78,我需要输出为1234.5678

你在错误的地方做这件事。您应该在转换为字符串之前执行此操作

如果不使用千位分隔符进行格式化,则可能会作弊,只需找到字符串中的小数点并向右移动两个字符(假定它不是0.2345!)


脆弱,反直觉,注定会让你在未来看起来像一个完整的瓦利。除非你有铁一般的借口,否则我会在同行评议中给你开一个新的。

首先
不是C#,这是一个错误的术语。在这种情况下,它只是一个分隔符

下面是我将用于实现示例中指定的效果的代码

var number = 123456.78
var formattedString = (number / 100.0).ToString();
编辑:

可以使用自定义格式字符串(且不带除法)执行此操作,但需要创建一个没有小数点的自定义区域性。我很确定没有这种文化存在。

写一个简单的方法

   public static string FormatNumberSpecialNumber(double inputString)
   {
       string tempString;
       tempString = string.Format("{0:#.#####}",(inputString / 100));
       return tempString;
   }
用法

var number = FormatNumberSpecialNumber(123456.78);

您是否希望将数字1000设为1000?您的意思是要将十进制数字分组为2组?请提供一个示例输出,以帮助解释您需要的内容。“,”不缩放数字。它添加了一个数千分隔符。例如,使用美国设置时,
1234567.89d
变为
“1234567.89”
,使用德国设置时,
“1.234.567,89”
。数值没有改变。听起来好像你想把这个数字除以100,这和格式没什么关系。也许这个问题可以说得更清楚。