我试图从一个 json 对象中精确解析纬度和经度,我选择了 float64 来完成这项工作。然而, float64 以某种方式四舍五入这个数字,我不知道该怎么做才能避免四舍五入。
我创建了一个快速片段,以便您可以执行问题:http : //play.golang.org/p/9g6Imn-7GK
package main
import (
"encoding/json"
"fmt"
"reflect"
)
type Position struct {
Lat float64 `json:"lat"`
Lon float64 `json:"lon"`
}
func main() {
s := `{"lat":13.519004709972312,"lon": -13.519004709972312}`
pos := Position{}
json.Unmarshal([]byte(s), &pos)
if !reflect.DeepEqual(s, &pos) {
fmt.Printf("\nExpected %#v\nbut got %#v", s, pos)
}
}
交互式爱情
相关分类