C# 格式化字符串编号

C# 格式化字符串编号,c#,string,format,currency,C#,String,Format,Currency,我想格式化一个字符串数字。例如: double number="118176"; 它应该看起来像1181.71或1181,71。 我找不到任何格式类型。我尝试了一些格式类型,如ToString(#,0”),但没有成功 谢谢您的建议。请参阅本页上的固定点(假设为.net): 您必须先除以100。首先:double变量不能接受字符串。但除此之外,类似这样的事情应该会有所帮助: double number = 1181.76; string output = String.Format("{0:d2

我想格式化一个字符串数字。例如:

double number="118176";
它应该看起来像1181.71或1181,71。 我找不到任何格式类型。我尝试了一些格式类型,如
ToString(#,0”)
,但没有成功


谢谢您的建议。

请参阅本页上的固定点(假设为.net):


您必须先除以100。

首先:
double
变量不能接受字符串。但除此之外,类似这样的事情应该会有所帮助:

double number = 1181.76;
string output = String.Format("{0:d2}", number);
这将获取数字并使用小数点后两位的十进制数字格式从中创建一个字符串

你没有说的是为什么你希望整数
118176
神奇地变成一个带两个小数的双精度?唯一的办法是

double number = 118176;
string output = String.Format("{0:d2}", number / 100.0);
编辑
做你在评论中描述的事情有点复杂:

string priceString = nodeFareList.SelectSingleNode("GenQuoteDetails/TotAmt").InnerText; 
double priceDouble = Convert.ToDouble(priceString) / 100.0;
price.InnerHtml += String.Format("{0:c}", priceDouble);
这会将
priceDouble
中的数字转换为具有货币格式的值的字符串。如果不需要货币符号,请使用以下符号:

price.InnerHtml += String.Format("{0:d2}", priceDouble);

如果是Java,可以参考下面的代码

1) 首先定义十进制格式实例

DecimalFormat DecimalFormat=新的DecimalFormat(“#####.##”)

2) 然后将十进制值传递给“format”方法

字符串dummyString=decimalFormat.format(pressureValue.toString())

其中pressureValue-十进制数


希望这会有用。

我想,您需要的是:

String.Format("{0:0,0.0}", 12345.67);     
String.Format("{0:0,0}", 12345.67);

有关详细信息,请参阅。

您使用的是哪种编程语言?双变量不接受字符串。你用的是哪种语言?你说的“格式化字符串”是什么意思?通常需要解析字符串或设置数字格式。听起来您可能想要解析、操作,然后格式化…为什么解析
“118176”
最终会得到
1181.71
6
变为
1
的原因是什么?顺便问一下,
double number=“118176”将不会编译。如果你发布一个例子,请发布一些正确的代码;price.InnerHtml+=nodeFareList.SelectSingleNode(“GenQuoteDetails/totam”).InnerText;字符串值为118176。但我想把它格式化为“1181.76”。我试过了;price.InnerHtml+=Convert.ToDouble(nodeFareList.SelectSingleNode(“GenQuoteDetails/totam”).InnerText);必须为ToString()方法提供某些内容。否。字符串始终是字符串。它是否包含数字并不重要。您需要做的是将字符串转换为数字类型。我将编辑我的答案。