0

我需要将字符串转换为浮点数,但可以有不同的输入字符串格式,例如'1234,5''1234.5''1 234,5''1,234.5'或其他。而且我无法更改语言环境十进制指针或千位分隔符,因为我可能不知道我会提前得到什么数据。

有没有一种方法或方法或库来解析和转换以浮动这种特定于语言环境的值而不知道使用哪个语言环境?

PS 对于日期的相同问题是否存在任何解决方案?

TIA。

4

1 回答 1

0

您可以假设哪个字符是千位分隔符,哪个是小数点。但是,在某些情况下,您无法确定要做什么:

  • 查找最后一个字符.or ,。如果它出现多次,则数字没有小数点,并且该字符是千位分隔符
  • 如果字符串只包含一个,最后一个是小数点
  • 如果字符串只包含一个点/逗号,那么你很不走运:123.456或者123,456可能是数字123456123.456. 但是,对于类似的数字123.45- 即潜在千位分隔符后的位数不是三的倍数 - 您可以假设它是小数点。
于 2012-04-24T09:49:01.127 回答