草庐IT

Ruby Regex 舍入尾随零

全部标签

c# - 带 3 个尾随小数位、十进制千位分隔符和逗号的格式数字

这可能是一个简单的问题,我相信有办法用string.format()、NumberFormatInfo、CultureInfo或它们的某种组合,但我需要显示带有3个尾随小数位的大数值,一个小数而不是千位分隔符的逗号,然后是百万分隔符及以上的逗号。输入是整数或后跟最多三位小数的数字(20000、123.456、12.2)例如:142650应该显示为142,650.00011200.50应显示为11,200.500123.456应该保持为123.456我想这与将值除以1000然后使用string.format("{0:f3}",value)是一样的,但我希望找到一些没有的东西算术。Stri

c# - 舍入时间跨度为 15 分钟间隔

我的代码中有一个属性,用户可以在其中以HH:mm格式输入时间跨度,例如10:3210:4415:45我想在我的属性(property)中四舍五入到最近的15分钟,但我这里没有日期时间。我只需要使用Timespan即可10:32to10:3010:44to10:4515:45to15:4501:02to01:0002:11to02:1503:22to03:1523:52to00:00尝试了所有这些解决方案,但它们涉及到日期时间HowcanIroundupthetimetothenearestXminutes?IsthereasimplefunctionforroundingaDateTi

c# - 我怎样才能向上而不是向下舍入数字?

我正在执行一些计算并将结果插入数据库。我的问题是,我得到的答案似乎是向下取整而不是向上取整。这可能看起来并不重要,但在大量销售过程中,美分开始增加!!DecimalpubCut=rrp*(percentageCutD/100);DecimalretCut=rrp*retailerCut;Decimaledcut=rrp*edpercentage;老实说,我对数字一窍不通,而整个数学功能是我在大学里试图避免的。谁能告诉我如何将这些数字向上取整而不是向下取整? 最佳答案 使用Math.Ceiling()方法。double[]values

c# - 使用 ToString ("F1"时 float 的舍入不正确)

我有一个浮点值:12345.6489当我格式化时使用:(12345.6489f).ToString("F1")然后我得到一个结果12345.7但这是不正确的,因为它应该是12345.6。有谁知道为什么会发生这种情况?另一个提示是,在格式化之前转换为double会返回正确的结果,如果我的浮点值小一点,例如1234.6489,那么我也会得到正确的结果。 最佳答案 这好像和我前段时间问的一个问题有关:Round-twiceerrorin.NET'sDouble.ToStringmethod请注意,如果您对号码调用.ToString("G"

c# - 为什么 C# 允许在集合初始值设定项中使用尾随逗号,但不允许在参数中使用?

有效语法:vartest=newList{"a","b","c",//Validtrailingcomma};语法无效:privatevoidTest(paramsstring[]args){}Test("a","b","c",//Invalidtrailingcomma);这是语法不一致的问题还是经过深思熟虑的决定? 最佳答案 因此,尽管我永远不会知道“真正的”原因,因为我不在编译器团队中,但我还是会尝试一下——而且有人出现的可能性值得怀疑。尾随逗号通常在一些场景中很有用,即合并和代码生成。在诸如集合或属性初始化器和枚举之类的上下

c# - Math.Round 不保留尾随零

我需要将所有值四舍五入到小数点后两位。所以1.401应该四舍五入到1.40,但是Math.Round(value,2)四舍五入到1.4。如何强制尾随零? 最佳答案 1.4与1.40相同-您只是想以不同的方式显示它。调用ToString时使用格式字符串-如value.ToString("0.00") 关于c#-Math.Round不保留尾随零,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questi

c# - 从带有尾随垃圾的字符串中解析一个整数

我需要解析出现在字符串开头的十进制整数。十进制数后可能有尾随垃圾。这需要被忽略(即使它包含其他数字。)例如"1"=>1"42"=>42"3-.X.-"=>3"2345"=>2.NET框架中是否有内置方法来执行此操作?int.TryParse()不合适。它允许尾随空格但不允许其他尾随字符。实现这个很容易,但如果存在标准方法,我更愿意使用它。 最佳答案 您可以使用Linq来执行此操作,不需要正则表达式:publicstaticintGetLeadingInt(stringinput){returnInt32.Parse(newstrin

c# - 用逗号格式化十进制,保留尾随零

我想将小数转换为字符串,使用逗号作为千位分隔符,并保持创建小数时使用的相同精度。(将有2-5位有效数字)decimald=1234.4500M;//I'dlike"1,234.4500"varnotRight=d.ToString("###,###.#######");//1,234.45varalsoNotRight=d.ToString("###,###.00000");;//1,234.45000varnotRightEither=d.ToString("N");//1,234.45varnotRightEither2=d.ToString("G");//1234.45000没有

c# - 为什么将 DateTime 格式化为字符串会截断而不是舍入毫秒?

当Double被格式化为字符串舍入时。例如Console.WriteLine(12345.6.ToString("F0"));输出12346However,whenaDateTimeisformattedasastringtruncationisused.E.g.varci=CultureInfo.InvariantCulture;vardateTime=DateTime.Parse("2011-09-14T15:18:42.999",ci);Console.WriteLine(dateTime.ToString("o",ci));Console.WriteLine(dateTime.

c# - 将日期时间削减/舍入为一个整体,即小时/天?

是否有某种数学方法可以将DateTime缩短为精确的小时、天左右?类似于将小数舍入为int。期间.日期如果原始值为2011-01-0113:00:00,则最终值为2011-01-0100:00:00如果Period.Hour如果原始值为2011-03-1113:32:00,则最终值为2011-03-1113:00:00我在想下面这样的事情。这当然可以正常工作,但是range-array无论如何都会在稍后迭代。如果我可以直接在该迭代而不是它自己的迭代上进行计算,那就更好了。但是someType不能放入该迭代中(它取决于someType)。if(someType==Period.Day)r