Go语言中各种数据格式转换
Go语言各种数据类型格式转换
package main import (
"encoding/json"
"fmt"
"reflect"
"strconv"
) type User struct {
Id int `json:"id"`
Name string `json:"name"`
} func main() {
//string到int
n10, _ := strconv.Atoi("12")
fmt.Println(reflect.TypeOf(n10))
// string到int64
n64, _ := strconv.ParseInt("12", 10, 64)
fmt.Println(reflect.TypeOf(n64))
// string to float32、float64
f_32, _ := strconv.ParseFloat("3.1415", 32)
f_64, _ := strconv.ParseFloat("3.1415", 64)
fmt.Printf("%T\n", f_32) // float64
fmt.Printf("%T\n", f_64) // int到string
s1 := strconv.Itoa(11)
fmt.Println(reflect.TypeOf(s1))
// int64到string
s2 := strconv.FormatInt(11,10)
fmt.Println(reflect.TypeOf(s2))
// float32/64 to string
s3 := strconv.FormatFloat(3.1415, 'E', -1, 32)
s4 := strconv.FormatFloat(3.1415, 'E', -1, 64)
fmt.Println(reflect.TypeOf(s3))
fmt.Println(reflect.TypeOf(s4)) // int和int64
n_10_64 := int64(11)
fmt.Println(reflect.TypeOf(n_10_64))
// int64 to int
n_64_10 := int(n_10_64)
fmt.Println(reflect.TypeOf(n_64_10)) s := `{"id": 1, "name": "wxnacy"}` // 将字符串反解析为结构体
var user User
_ = json.Unmarshal([]byte(s), &user)
fmt.Println(user) // {1 wxnacy} // 将字符串反解析为字典
var d map[string]interface{}
_ = json.Unmarshal([]byte(s), &d)
fmt.Println(d) // map[id:1 name:wxnacy] // 将字符串反解析为数组
s = `[1, 2, 3, 4]`
var a []int
_ = json.Unmarshal([]byte(s), &a)
fmt.Println(a) // [1 2 3 4] // 将结构体解析为字符串
str_user, _ := json.Marshal(user)
fmt.Println(string(str_user))// {"id":1,"name":"wxnacy"}
// 数组解析为字符串
str_a, _ := json.Marshal(a)
fmt.Println(string(str_a)) // [1,2,3,4] <nil>
// map解析为字符串
str_d, _ := json.Marshal(d)
fmt.Println(string(str_d)) // {"id":1,"name":"wxnacy"} <nil>
}
Go语言中各种数据格式转换的更多相关文章
- 【转】在Python的struct模块中进行数据格式转换的方法
这篇文章主要介绍了在Python的struct模块中进行数据格式转换的方法,文中还给出了C语言和Python语言的数据类型比较,需要的朋友可以参考下 Python是一门非常简洁的语言,对于数据类型的表 ...
- java语言中数值自动转换的优先顺序
转换原则:从低精度向高精度转换byte .short.int.long.float.double.char数据类型的转换,分为自动转换和强制转换.自动转换是程序在执行过程中“悄然”进行的转换,不需要用 ...
- Go语言中的数据格式(json、xml 、msgpack、protobuf)
在分布式的系统中,因为涉及到数据的传输,所以一定会进行数据的交换,此时就要定义数据交换的格式,例如二进制.Json.Xml等等.本篇文章就是总结一下常用的几种数据格式. 一.Json格式 如果想使用J ...
- c语言中类型隐性转换的坑
谨记:在C语言中,当两种不同类型之间运算时,低字节长度类型会向高自己长度类型转换,有符号会向无符号类型转换. 举例子如下: #include <stdio.h> void func(voi ...
- SpringMVC中Json数据格式转换
1 @RequestBody 作用: @RequestBody注解用于读取http请求的内容(字符串),通过springmvc提供的HttpMessageConverter接口将读到的内容转换为 ...
- C#中的数据格式转换 (未完待更新)
一.string to int int intA = 0;1.intA =int.Parse(str);2.int.TryParse(str, out intA);3.intA = Convert.T ...
- C语言中格式化输出的转换说明的fldwidth和precision解析
首先说什么是C语言的格式化输出,就是printf和它的几个变种(grep -E "v?(sn|s|f)printf").像这些函数都有一个参数format,format中可以加点转 ...
- 页面输入的数据格式转换类:BaseAction(经常使用于Struts框架中)
在我们接收页面传来的数据时,这些数据都是以String类型接收的,所以要进行数据格式转换,这时候就能够统一为它们进行转换,并且在处理这些数据的类中能够继承ActionSupport类,然后让每个接收数 ...
- C++ 语言中的重载、内联、缺省参数、隐式转换等机制展现了很多优点
C++ 语言中的重载.内联.缺省参数.隐式转换等机制展现了很多优点,但是这些 优点的背后都隐藏着一些隐患.正如人们的饮食,少食和暴食都不可取,应当恰到好处. 我们要辨证地看待 C++的新机制,应该恰如 ...
随机推荐
- Groovy获取Bean两种方式(奇淫技巧操作)
前言:请各大网友尊重本人原创知识分享,谨记本人博客:南国以南i 背景: 在Java代码中当我们需要一个Bean对象,通常会使用spring中@Autowired注解,用来自动装配对象. 在Groovy ...
- 代码仓库gogs的基本配置使用
目录 一.基本功能介绍 主板说明 页面说明 用户设置 二.仓库 新建仓库 迁移仓库 仓库介绍 三.组织和团队 创建新组织 创建团队 一.基本功能介绍 主板说明 图中1表示自己个人账户下的仓库(所有权属 ...
- CF116B Little Pigs and Wolves 题解
Content 有一张 \(n\times m\) 的地图,其中,\(\texttt{P}\) 代表小猪,\(\texttt{W}\) 代表狼.如果狼的上下左右有一头以上的小猪,那么它会吃掉其中相邻的 ...
- CF1064A Make a triangle! 题解
Content 有三条长度分别为 \(a,b,c\) 的线段.你可以在一个单位时间内将一条线段的长度增加 \(1\),试求出能使这三条线段组成一个三角形的最短时间. 数据范围:\(1\leqslant ...
- CF1092B Teams Forming 题解
Content 有 \(n\) 个学生,每个学生有一个能力值 \(a_i\).现在想把学生两两分成一组,但是不能让每个组里面的学生能力值不相同,因此可以通过刷题来提升自己的能力值,每次解出一道题,能力 ...
- js文件需要jsp页面中的div时,此js文件必须在div之后才能获得值,否则获取不到
js文件需要jsp页面中的div时,此js文件必须在div之后才能获得值,否则获取不到 2.图2的内容为directionkey.js的内容
- c++之折半查找(二分查找)递归与非递归的实现
递归实现 template<typename T> int binary_search2(const T arr[], const int left, const int right, c ...
- 【LeetCode】395. Longest Substring with At Least K Repeating Characters 解题报告(Python)
作者: 负雪明烛 id: fuxuemingzhu 个人博客: http://fuxuemingzhu.cn/ 题目地址: https://leetcode.com/problems/longest- ...
- Java调用Azkaban的RestFul接口
1.绕过ssl认证的工具类: import java.security.KeyManagementException; import java.security.NoSuchAlgorithmExce ...
- InfoGAN
目录 概 主要内容 Chen X., Duan Y., Houthooft R., Schulman J., Sutskever I., Abbeel P. InfoGAN: Interpretabl ...