【问题标题】:Convert String to Double, Explicitly Using Period as Decimal Point将字符串转换为双精度,显式使用句点作为小数点
【发布时间】:2014-06-13 18:47:46
【问题描述】:

我的软件的一个功能是将数字字符串转换为double 数据类型。我想明确指出使用句点 (.) 作为小数点。因此,无论用户系统的语言设置如何,它都会正确读取句点分隔的十进制。我相信解决方案是在Convert.ToDouble() 函数中使用IFormatProvider 参数。我不确定如何执行此操作。

示例: 字符串:“3.14” 双倍:3.14

【问题讨论】:

    标签: c# iformatprovider


    【解决方案1】:

    解析时使用CultureInfo.InvariantCulture。

    double d = double.Parse("3.14", CultureInfo.InvariantCulture);
    

    见:CultureInfo.InvariantCulture Property

    不变的文化是文化不敏感的;它与 英语,但不涉及任何国家/地区。

    【讨论】:

      【解决方案2】:
      double.Parse(yourString, CultureInfo.InvariantCulture)
      

      编辑:或查看this question

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多