dsfds4551 2018-01-14 16:06
浏览 71
已采纳

字符串到golang中的2d浮点数组

I am writing a code in go to retrieve data through the rest API. The output I am getting is a two-dimensional array as a string, like this

[
[1514771940,13345.7,13381.01,13381,13345.7,4.276442830000001],
[1514771880,13332.12,13387.72,13332.12,13381,14.83685867],
.
.
.
]

How can I transform this string to 2-D float array?

  • 写回答

1条回答 默认 最新

  • dtkyayvldeaqhl7151 2018-01-14 16:41
    关注

    This is just an array of arrays in json. You can parse it using the json package:

    package main
    
    import (
        "encoding/json"
        "fmt"
    )
    
    func main() {
        input := `[[1514771940,13345.7,13381.01,13381,13345.7,4.276442830000001],[1514771880,13332.12,13387.72,13332.12,13381,14.83685867]]`
    
        var parsed [][]float64
        if err := json.Unmarshal([]byte(input), &parsed); err != nil {
            panic(err)
        }
        fmt.Println(parsed)
    }
    

    Prints:

    [[1.51477194e+09 13345.7 13381.01 13381 13345.7 4.276442830000001] [1.51477188e+09 13332.12 13387.72 13332.12 13381 14.83685867]]
    

    You should check the API docs, they must mention what format the response is in. If this is over http, the content-type will tell you as well.

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?