首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >分析字符串以使用逗号和point进行双精度

分析字符串以使用逗号和point进行双精度
EN

Stack Overflow用户
提问于 2012-07-19 20:03:21
回答 13查看 195.4K关注 0票数 82

我正在尝试编写一个函数,它基本上将字符串数组转换为字符串数组,其中数组中的所有双精度数都四舍五入为我设置的小数位数。数组中也可以有字符串,这些字符串根本不是双精度值。

代码语言:javascript
运行
复制
string[,] values = new string[1, 3];

values[0, 0] = "hello";
values[0, 1] = "0.123";
values[0, 2] = "0,123";

int decimalPlaces = 2;

double tmp;
string format = "F" + decimalPlaces.ToString();
IFormatProvider provider = CultureInfo.InvariantCulture;
for (int i = 0; i < values.GetLength(0); i++)
{
    for (int j = 0; j < values.GetLength(1); j++)
    {
        if (double.TryParse(values[i, j], out tmp))
        {
            values[i, j] = tmp.ToString(format, provider);
        }
    }
}

Console.ReadLine();

结果必须是:"hello","0.12","0.12“,但它是"hello”,"123.00","0.12“将以错误的方式处理逗号。有没有人有简单有效的解决方案?

EN

Stack Overflow用户

发布于 2021-07-08 15:34:48

如果我只想解析一个带有小数点分隔符的数字,我会使用下面的代码片段:

代码语言:javascript
运行
复制
public bool TryParseDecimal(string value, out decimal result) {
    const string your_separator = ",";

    var numberFormat = new NumberFormatInfo {
            NumberDecimalSeparator = your_separator
    };

    return decimal.TryParse(value, NumberStyles.AllowDecimalPoint, numberFormat, out result);
}

我不认为使用区域性或字符串操作表达了将数字转换为非‘’的意图。小数点。

票数 0
EN
查看全部 13 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11560465

复制
相关文章

相似问题

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