• 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
    ", f_32)  // float64
    	fmt.Printf("%T
    ", 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>
    }
    

      

      

  • 相关阅读:
    Asp.net实现MVC处理文件的上传下载删除功能实例教程
    My WebGrid
    Asp.net MVC3 WebGrid查询绑定
    jquery 使用简明教程
    View-Control-Model基础,强类型视图,添加验证 Sample
    MVC3 DorpDownList
    WARNING: IPv4 forwarding is disabled. Networking will not work.
    KVM虚拟化管理平台WebVirtMgr部署及使用
    error:docker-ce conflicts with 2:docker-1.13.1-74.git6e3bb8e.el7.centos.x86_64
    vue.js插值,插入图片,属性
  • 原文地址:https://www.cnblogs.com/zhangyafei/p/11940857.html
Copyright © 2020-2023  润新知