我有一个查询。我需要将(,
)改为(.
)和(.
)改为(,
)一个数字(即1,234.45
- > 1.234,45
)。
我尝试了string.Replace()
方法。它将所有(。)改为(,)或(,)改为(。)。
请有人建议我如何实现这一目标。
答案 0 :(得分:3)
您可以将ToString
与NumberFormatInfo
decimal value = new decimal(1234.45);
Console.Out.WriteLine(value.ToString("N", new NumberFormatInfo
{
NumberDecimalSeparator = ".",
NumberGroupSeparator = ","
}));
将输出
1,234.45
答案 1 :(得分:2)
只需在替换之间使用临时字符(例如:' _')。
char tempChar = '_';
string originalStr = "1,234.45";
string finalStr = originalStr.Replace(',', tempChar).Replace('.', ',').Replace(tempChar , '.');
答案 2 :(得分:-1)
您可以尝试使用:
var str = Convert.ToDecimal("1.2345", new CultureInfo("en-US"));
或喜欢
var str = decimal.Parse("1.2345", new NumberFormatInfo() { NumberDecimalSeparator = "," });