gpt4 book ai didi

json - 如何将字符串解析为 float ?

转载 作者:行者123 更新时间:2023-12-04 19:55:44 27 4
gpt4 key购买 nike

我需要使用代表 float 的 json 源s 为 string s*,我不知道怎么做。

这几乎很容易:

Json.Decode.map String.toFloat Json.Decode.string

但是,这会产生 Maybe Float如果它无法解码字符串,我宁愿它完全失败。

(*) 这样做的原因是真正的数据类型是十进制,所以 "1.5"!= "1.50"。不过,我的应用程序不必关心。

最佳答案

您可以安装 elm-community/json-extra 并使用 Json.Decode.Extra.parseFloat

或者只是复制它的实现

fromMaybe : String -> Maybe a -> Decode.Decoder a
fromMaybe error val =
case val of
Just v ->
Decode.succeed v

Nothing ->
Decode.fail error

parseFloat : Decode.Decoder Float
parseFloat =
Decode.string |> Decode.andThen (String.toFloat >> fromMaybe "failed to parse as float")

关于json - 如何将字符串解析为 float ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52552960/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com