首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何最多显示两位数,但显示较少?

如何最多显示两位数,但显示较少?
EN

Stack Overflow用户
提问于 2017-03-15 00:42:55
回答 3查看 88关注 0票数 3

如何将网格中被视为文本的单元格设置为零、一位或两位数,具体取决于值是什么,但如果它有更多的值,则将其减少到两位数?

如果值为25,我们将显示25。如果该值为26.3,我们将显示26.3。如果该值为27.59,我们将显示27.59。如果该值为28.124,我们将显示28.12.如果该值为11.1111111,则显示11.11.

这有意义吗?

我使用的是C#、MVC和javascript/jquery。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2017-03-15 00:50:46

如果您不想舍入该值,则可以执行两种不同的操作:

代码语言:javascript
复制
//using String.Format()
string.Format("{0:#.##}", someValue)
//using ToString()
someValue.ToString("#.##")

Working fiddle here

如果您的值不是双精度/小数形式,那么您可以通过检查小数点的索引并将字符串修剪为小数点右侧的1或2个索引来操作字符串。但是,将值解析为新的双精度值可能会更容易,而不是让字符串格式化从那里获取它。

票数 3
EN

Stack Overflow用户

发布于 2017-03-15 00:47:50

在C#中,您可以使用Math.Round函数

代码语言:javascript
复制
decimal d = 28.1234;
Var a = Math.Round(d,2);

A将是28.12岁

票数 1
EN

Stack Overflow用户

发布于 2017-03-15 00:53:19

因为你说它就像一个文本,所以你以一个字符串开头:

代码语言:javascript
复制
string text = "25.1234";

然后,您可以将其解析为双精度,以便对其进行舍入:

代码语言:javascript
复制
double number = double.Parse(text);

然后,将值四舍五入为所需的小数并将其转换为字符串:

代码语言:javascript
复制
text = Math.Round(number, 2).ToString();
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/42791775

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档