使用json unmarshal数据到interface{}, 数字变成float64,,golang
来源:互联网 发布:after effects mac版 编辑:程序博客网 时间:2024/06/05 17:35
碰到这个问题一脸疑惑,后来不断谷歌才找到答案,小白用户献上解析如下:
这是由于JSON里的数字默认都会转成golang的float64类型引起的
进行json解析时,若以interface{}接收数据,则会按照下列规则进行解析:
bool, for JSON booleans
float64, for JSON numbers
string, for JSON strings
[]interface{}, for JSON arrays
map[string]interface{}, for JSON objects
nil for JSON null
而浮点数打印时的默认规则是超过一定长度后会换成科学计数法打印。
因此,只要在打印时指定打印格式,或者(按照LZ示例里是整数的情况时),转换为整数打印
fmt.Println(int(a["id"].(float64)))
阅读全文
0 0
- 使用json unmarshal数据到interface{}, 数字变成float64,,golang
- Golang JSON Unmarshal MySQL datetime to time.Time
- Java的时间类型数据使用Json字符串传输时变成一串数字的解决方法
- Golang 中使用 JSON 的一些小技巧 陶文 陶文 3 个月前 有的时候上游传过来的字段是string类型的,但是我们却想用变成数字来使用。 本来用一个json:",string" 就可以支持了
- golang post发送application/json数据到服务器
- golang json 为map[string] interface{}
- Golang开发实践:把数据库数据保存到map[string]interface{}中
- golang--json使用笔记
- golang JSON的使用
- golang解析json格式数据
- go json解析Marshal和Unmarshal
- golang interface
- golang interface
- Golang-interface(一 基本使用)
- golang中json的使用
- 在 golang 中使用 Json
- 在 golang 中使用 Json
- php导出数据到excel,防止身份证等数字字符格式变成科学计数的方法
- Scrapy框架
- [opengl笔记]2017年8月18日
- java学习——java基础(四)之异常
- Java面试个人整理(手打勿喷,易于个人学习)4
- 写优雅代码之聊一聊继承2
- 使用json unmarshal数据到interface{}, 数字变成float64,,golang
- 『R语言初学』Day3
- myeclipse+maven搭建web项目方法一(超级详细)
- DOM事件处理程序
- 使用Python批量修改文件名
- sizeof是如何实现的,和内核里面宏如出一辙
- ShaderLab- Pass Tags
- keras函数式模型接口
- 2017 Multi-University Training Contest