- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
为什么我的十进制字符串值没有转换?!当使用 java.lang.Double.parseDouble 时,给出 NumberFormatException 的值工作得很好,但不建议在 Kotlin 中使用 java Double
Image of results from using toDouble()
double 值是“39.05166667”
最佳答案
您的字符串具有 Unicode u+FEFF
byte order mark开头的字符,定义为“Zero width no-break space ”。它甚至没有定义为空白,因此 trim()
不会删除它!
我发现即使使用java.lang.Double.parseDouble
,它也会失败。也许当你检查这个时,你无意中重新输入了字符串的有问题的部分。
您可以通过记录字符串的长度并观察它是否比预期长来进行检查。
我不知道你是如何将此字符放入字符串中的(也许是从某些 HTML 中复制它?),但你应该能够编写一个函数来修剪它以安全地解析它:
fun String.fullTrim() = trim().replace("\uFEFF", "")
val number = "39.05166667".fullTrim().toDouble()
关于java - Kotlin String toDouble() 函数不解析某些值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59862042/
我正在尝试执行以下代码行,但它给我错误: var distanceTravelRight = 10.0; var tick = DateTime.Now.Ticks(); var velLeft =
Closed. This question needs debugging details 。它目前不接受答案。 想改善这个问题吗?更新问题,使其成为 Stack Overflow 的 on-topi
当字符串将字符串值转换为 double 值时,我遇到了问题。例如: string val="2.0"; double dval=Convert.ToDouble(val); 在法语系统上执行此代码会引
我正在从内部数据库读取数据。该代码将从数据库中读取的值分配给 double。 if (Convert.ToDouble(PricefromString) == Price && PriceFound
我正在尝试将此字符串转换为 double Convert.ToDouble("1.12"); 这是输出 System.FormatException was unhandled. 我应该这样做吗?
这个问题在这里已经有了答案: Conversion of a decimal to double number in C# results in a difference (5 个答案) 关闭 6
我有一个包含“09338.712001”的 QString myNumber。当我这样做时: myNumber.toDouble();,它返回 9338.71,但我希望 double 为原始值,即 0
我正在尝试使用 QString::toDouble() 函数验证用户输入。 documentation说该函数应该像这样使用: double QString::toDouble ( bool * ok
为什么我的十进制字符串值没有转换?!当使用 java.lang.Double.parseDouble 时,给出 NumberFormatException 的值工作得很好,但不建议在 Kotlin 中
我正在使用 ASP.NET 和 VB.NET。 这是我的代码 Dim Total As Double Total = Convert.ToDouble(lblTotal.Text.Substring(
我在加倍转换时遇到问题。我正在将两个字符串转换为 double,一个转换得很好,另一个转换为 int,但这是相同的代码.. QTextStream lecture(&file); ligne = le
我想在 QJsonObject 中存储一个 double 值并稍后检索相同的值。但是,检索到的值精度较低。 这是一个例子: qDebug() << QJsonObject({{"number", 49
可能这是一个非常基本的问题,但我真的很想知道到底发生了什么。 例如,如果我们在 C# 中执行以下操作: object obj = "330.1500249000119"; var val = Conv
很奇怪,星期五我在公司的项目中工作,我发现了一些“坏”代码或奇怪的代码。我说,我不相信 Microsoft Framework 中的那个错误。 我发现: double? euros = null; d
是否有比Convert.ToDouble更快的方法将string转换为double? 我监控了 System.Convert.ToDouble(string) 调用及其降低我的应用程序性能的情况。 C
来自 msdn 页面: public static double ToDouble( char value ) Parameters value Type: System.Char The Unico
考虑: val foo: Int = 1 foo.toDouble() // ok val bar = 2.toUInt() bar.toDouble() // error! 这对我来说没有意义。为什
我遇到了一个非常奇怪的问题。我在立即窗口中运行此命令: ?(System.Convert.ToDouble(2458963.229671001113318401517D)) 2458963.22967
我有这个代码: static def parseString(String inputRow, Particle particle) { def map = inputRow.spli
我有这个代码: static def parseString(String inputRow, Particle particle) { def map = inputRow.spli
我是一名优秀的程序员,十分优秀!