2010-05-14 44 views
5

我有我的类变量量来改变小数%...如何使用.NET

这个数量值是从正在添加数据库作为小数东西.0.000654345

而在网格中显示我需要显示此为百分比值.. 可以anyboydy帮我..

感谢

+2

恩,乘以100,并在结果后放一个百分号? – 2010-05-14 20:52:06

回答

3

乘以100,并解析结果为一个字符串,并适当地将其格式化......

String parsedNum = String.Format("{0}%", num * 100); 
+2

对于使用String.format而不是将数字转换为字符串。请注意,可以将'“{0}%”'更改为例如'“{0.00}%”'或类似的名称,以控制小数点后显示的位数。如果你这样做,数字是四舍五入的。 – Brian 2010-05-14 20:58:24

+0

删除+1。迈克尔哈伦的答案更好。 – Brian 2010-05-14 21:10:30

3

嗯,这真的取决于它意味着以目前的形式来表示。

可能可以简单到乘以100 ...但它也可以是10,000,具体取决于“金额”的确切含义。

您想要为0.000654345显示什么?

+2

为什么这个答案被接受?这是一个很好的观点(虽然应该是IMO的评论),但这不是一个真正的答案。或者是Jon Skeet用黑魔法获得更多声望? – Brian 2010-05-14 21:06:32

+0

@Brian:“接受”是什么意思?至少这不是被接受的答案。另外,如果您计划在获得更多信息后编辑您的答案,我认为可以回答一个问题。 – 2010-05-14 21:18:39

+0

@Matti:乔恩斯威特的答案被接受了,但是OP后来不接受他的接受。 – Brian 2010-05-14 21:23:18

0
Double yourValue = 0.00065; 
String percentage = (yourValue*100).ToString() + "%"; 
10

使用"P" format,这是希望更多地了解全球化:

String.Format("{0:P4}", pos); // e.g. 1,000.0000% 

正如其他人所建议的,您应该也可以直接在GridView中使用此格式字符串。因为它为你做了100倍的计算,但它实际上应该工作:)。也许like this

<asp:BoundField DataField="Db" DataFormatString="{0:P4}" /> 
+0

+1对于'P'格式,这是我可以用来清理我自己的代码的东西。 – Brian 2010-05-14 21:12:14

0

这听起来像你问隐含一个GridView的问题还有,试试:

<ItemTemplate> 
    <asp:Label id="Label1" runat="server" 
     Text='<%# Eval("Amount", "{0:0%}") %>' /> 
</ItemTemplate> 
0

无需通过100使用此

Console.WriteLine("Display percentage: {0:#.##%}", num); 

使用倍增#取决于精度。