如果我将数字作为没有小数位的文本字符串,我如何将其转换为 2 个小数位,以便将 12345 转换为 123.45?字符串可以是任何大于 1 的长度。
问问题
595 次
5 回答
1
将其转换为您的十进制类型,然后除以 100。
string stringVal = "12345";
decimal val = decimal.Parse( stringVal ) / 100M;
double val = double.Parse( stringVal ) / 100.0;
使用将其转换回字符串
string newVal = string.Format( "{0:N}", val );
于 2009-04-03T16:07:43.370 回答
1
只需将其除以 100.0。
x = int(x)
x /= 100.0
于 2009-04-03T16:08:47.063 回答
1
如果您确信它是数字并且不想仔细检查,那么您可以避免转换:
if (stringVal.Length == 2)
{
stringVal = "0." + stringVal;
}
else
{
stringVal = stringVal.Insert(x.Length - 2, ".");
}
这假设如果它是 2 位数字,您需要前导零。
于 2009-04-03T16:11:07.340 回答
1
如果要将结果作为字符串,则可以使用字符串操作(C# 中的示例):
value.Substring(0, value.Length-2) + "." + value.Substring(value.Length-2)
如果要将结果作为数字,首先解析值然后除以 100:
double.Parse(value) / 100.0
于 2009-04-03T16:13:10.407 回答
0
十进制 str=12345;
(str/100).ToString("F");
于 2009-04-03T16:43:00.493 回答