convert

package module
v1.0.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 18, 2017 License: MIT Imports: 4 Imported by: 4

README

简介

golang的基础数据类型相互转换包。

包括ToXX方法及MustXX两类方法,To方法会在失败的时候返回error,而Must方法会在失败的时候直接panic。

安装

go get -u -v github.com/szyhf/go-convert

例子

import convert "github.com/szyhf/go-convert"
import "fmt"

var numStr := "123"
num,err := convert.GetInt(numStr)
fmt.Println(num,err)

num2 := convert.MustInt(numStr)
fmt.Println(num)

var numStrArray := []string{"123","321"}
numAry,err := convert.GetIntArray(numStrArray)
fmt.Println(numAry,err)

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func MustBool

func MustBool(value interface{}) bool

func MustExplodeStructField

func MustExplodeStructField(array interface{}, field string) (explodeArray []interface{})

func MustFloat64

func MustFloat64(value interface{}) (res float64)

func MustInt

func MustInt(value interface{}) (res int)

强制转换为int,失败则panic string会按顺序尝试将数据解析为int64\uint64\float64\bool,然后再转换为int float会抹去小数 uint8~64、int8~64都会做默认的转换 bool类型的数据,true-1;false-0

func MustInt16

func MustInt16(value interface{}) (res int16)

强制转换为int16,失败则panic string会按顺序尝试将数据解析为int64\uint64\float64\bool,然后再转换为int16 float会抹去小数 uint8~64、int8~64都会做默认的转换 bool类型的数据,true-1;false-0

func MustInt16Array

func MustInt16Array(value interface{}) (resArray []int16)

尽最大努力将目标转换为[]int16,失败会panic

func MustInt32

func MustInt32(value interface{}) (res int32)

强制转换为int32,失败则panic string会按顺序尝试将数据解析为int64\uint64\float64\bool,然后再转换为int32 float会抹去小数 uint8~64、int8~64都会做默认的转换 bool类型的数据,true-1;false-0

func MustInt32Array

func MustInt32Array(value interface{}) (resArray []int32)

尽最大努力将目标转换为[]int32,失败会panic

func MustInt64

func MustInt64(value interface{}) (res int64)

强制转换为int64,失败则panic string会按顺序尝试将数据解析为int64\uint64\float64\bool,然后再转换为int64 float会抹去小数 uint8~64、int8~64都会做默认的转换 bool类型的数据,true-1;false-0

func MustInt64Array

func MustInt64Array(value interface{}) (resArray []int64)

尽最大努力将目标转换为[]int64,失败会panic

func MustInt8

func MustInt8(value interface{}) (res int8)

强制转换为int8,失败则panic string会按顺序尝试将数据解析为int64\uint64\float64\bool,然后再转换为int8 float会抹去小数 uint8~64、int8~64都会做默认的转换 bool类型的数据,true-1;false-0

func MustInt8Array

func MustInt8Array(value interface{}) (resArray []int8)

尽最大努力将目标转换为[]int8,失败会panic

func MustIntArray

func MustIntArray(value interface{}) (resArray []int)

尽最大努力将目标转换为[]int,失败会panic

func MustInterfaceArray

func MustInterfaceArray(array interface{}) []interface{}

func MustJson

func MustJson(i interface{}) []byte

func MustJsonPrettyString

func MustJsonPrettyString(i interface{}) string

func MustJsonString

func MustJsonString(i interface{}) string

func MustMapStringInterfaceRecursions

func MustMapStringInterfaceRecursions(leafMap interface{}) map[string]interface{}

把map转成map[string]interface{},key的值使用MustString计算。 如果子项中也有map,则继续递归执行直到全部转换为map[string]interface{} 如果子项有[]interface{},则要继续判定slice的元素中的类型 常用于各种xml\yaml\json转换为map的结果的统一处理。

func MustMapStringInterfaceRecursionsInArrayInterface

func MustMapStringInterfaceRecursionsInArrayInterface(leafAry interface{}) []interface{}

协助处理[]interface{}中的map[interface{}]interface{}为map[string]interface{}

func MustString

func MustString(value interface{}) string

强制转换一个对象为string

func MustStringArray

func MustStringArray(array interface{}) (resArray []string)

强转一个字符串数组

func MustUint

func MustUint(value interface{}) (res uint)

强制转换为uint,失败则panic string会按顺序尝试将数据解析为int64\uint64\float64\bool,然后再转换为uint;空字符串会转化为0. float会抹去小数 uint8~64、int8~64都会做默认的转换 bool类型的数据,true-1;false-0

func MustUint16

func MustUint16(value interface{}) (res uint16)

强制转换为uint16,失败则panic string会按顺序尝试将数据解析为int64\uint64\float64\bool,然后再转换为uint16 float会抹去小数 uint8~64、int8~64都会做默认的转换 bool类型的数据,true-1;false-0

func MustUint16Array

func MustUint16Array(value interface{}) (resArray []uint16)

尽最大努力将目标转换为[]uint16,失败会panic

func MustUint32

func MustUint32(value interface{}) (res uint32)

强制转换为uint32,失败则panic string会按顺序尝试将数据解析为int64\uint64\float64\bool,然后再转换为uint32 float会抹去小数 uint8~64、int8~64都会做默认的转换 bool类型的数据,true-1;false-0

func MustUint32Array

func MustUint32Array(value interface{}) (resArray []uint32)

尽最大努力将目标转换为[]uint32,失败会panic

func MustUint64

func MustUint64(value interface{}) (res uint64)

强制转换为uint64,失败则panic string会按顺序尝试将数据解析为int64\uint64\float64\bool,然后再转换为uint64 float会抹去小数 uint8~64、int8~64都会做默认的转换 bool类型的数据,true-1;false-0

func MustUint64Array

func MustUint64Array(value interface{}) (resArray []uint64)

尽最大努力将目标转换为[]uint64,失败会panic

func MustUint8

func MustUint8(value interface{}) (res uint8)

强制转换为uint8,失败则panic string会按顺序尝试将数据解析为int64\uint64\float64\bool,然后再转换为uint8 float会抹去小数 uint8~64、int8~64都会做默认的转换 bool类型的数据,true-1;false-0

func MustUint8Array

func MustUint8Array(value interface{}) (resArray []uint8)

尽最大努力将目标转换为[]uint8,失败会panic

func MustUintArray

func MustUintArray(value interface{}) (resArray []uint)

尽最大努力将目标转换为[]uint,失败会panic

func ToBool

func ToBool(value interface{}) (res bool, err error)

字符串中将"1", "t", "T", "true", "TRUE", "True"转为true 将"0", "f", "F", "false", "FALSE", "False", ""转为false,空字符串也转为false 数字中仅支持将0转为false,1转为true。

func ToExplodeStructField

func ToExplodeStructField(array interface{}, field string) (explodeArray []interface{}, err error)

把数组中的各个元素的指定filed取出来放到一个数组中 要求Array所有元素都是同一种类型,虽然支持指针混用但建议尽可能避免。 ary := []interface{}{foo{ID: 1, Field: "foo1"}, &foo{ID: 2, Field: "foo22"}} fieldAry := Explode(ary,"Field") // []interface{}{"foo1","foo22"}

func ToFloat32

func ToFloat32(value interface{}) (res float32, err error)

尽最大努力将一个值转为float32类型的数据 string会按顺序尝试将数据解析为float64\uint64\bool,然后再转换为float64 uint8~64、int8~64都会做默认的转换 bool类型的数据,true-1;false-0

func ToFloat64

func ToFloat64(value interface{}) (res float64, err error)

尽最大努力将一个值转为float64类型的数据 string会按顺序尝试将数据解析为float64\uint64\bool,然后再转换为float64 uint8~64、int8~64都会做默认的转换 bool类型的数据,true-1;false-0

func ToInt

func ToInt(value interface{}) (res int, err error)

尽最大努力将一个值转为int类型的数据 string会按顺序尝试将数据解析为int64\uint64\float64\bool,然后再转换为int float会抹去小数 uint8~64、int8~64都会做默认的转换 bool类型的数据,true-1;false-0

func ToInt16

func ToInt16(value interface{}) (res int16, err error)

尽最大努力将一个值转为int16类型的数据 string会按顺序尝试将数据解析为int64\uint64\float64\bool,然后再转换为int16 float会抹去小数 uint8~64、int8~64都会做默认的转换 bool类型的数据,true-1;false-0

func ToInt16Array

func ToInt16Array(value interface{}) (resArray []int16, err error)

尽最大努力将目标转换为[]int16

func ToInt32

func ToInt32(value interface{}) (res int32, err error)

尽最大努力将一个值转为int32类型的数据 string会按顺序尝试将数据解析为int64\uint64\float64\bool,然后再转换为int32 float会抹去小数 uint8~64、int8~64都会做默认的转换 bool类型的数据,true-1;false-0

func ToInt32Array

func ToInt32Array(value interface{}) (resArray []int32, err error)

尽最大努力将目标转换为[]int32

func ToInt64

func ToInt64(value interface{}) (res int64, err error)

尽最大努力将一个值转为int64类型的数据 string会按顺序尝试将数据解析为int64\uint64\float64\bool,然后再转换为int64 float会抹去小数 uint8~64、int8~64都会做默认的转换 bool类型的数据,true-1;false-0

func ToInt64Array

func ToInt64Array(value interface{}) (resArray []int64, err error)

尽最大努力将目标转换为[]int64

func ToInt8

func ToInt8(value interface{}) (res int8, err error)

尽最大努力将一个值转为int8类型的数据 string会按顺序尝试将数据解析为int64\uint64\float64\bool,然后再转换为int8 float会抹去小数 uint8~64、int8~64都会做默认的转换 bool类型的数据,true-1;false-0

func ToInt8Array

func ToInt8Array(value interface{}) (resArray []int8, err error)

尽最大努力将目标转换为[]int8

func ToIntArray

func ToIntArray(value interface{}) (resArray []int, err error)

尽最大努力将目标转换为[]int

func ToInterfaceArray

func ToInterfaceArray(array interface{}) ([]interface{}, error)

func ToString

func ToString(value interface{}) (string, error)

转换一个对象为string

func ToStringArray

func ToStringArray(value interface{}) ([]string, error)

尝试一个字符串数组

func ToUint

func ToUint(value interface{}) (res uint, err error)

尽最大努力将一个值转为uint类型的数据 string会按顺序尝试将数据解析为int64\uint64\float64\bool,然后再转换为uint float会抹去小数 uint8~64、int8~64都会做默认的转换 bool类型的数据,true-1;false-0

func ToUint16

func ToUint16(value interface{}) (res uint16, err error)

尽最大努力将一个值转为uint16类型的数据 string会按顺序尝试将数据解析为int64\uint64\float64\bool,然后再转换为uint16 float会抹去小数 uint8~64、int8~64都会做默认的转换 bool类型的数据,true-1;false-0

func ToUint16Array

func ToUint16Array(value interface{}) (resArray []uint16, err error)

尽最大努力将目标转换为[]uint16

func ToUint32

func ToUint32(value interface{}) (res uint32, err error)

尽最大努力将一个值转为uint32类型的数据 string会按顺序尝试将数据解析为int64\uint64\float64\bool,然后再转换为uint32 float会抹去小数 uint8~64、int8~64都会做默认的转换 bool类型的数据,true-1;false-0

func ToUint32Array

func ToUint32Array(value interface{}) (resArray []uint32, err error)

尽最大努力将目标转换为[]uint32

func ToUint64

func ToUint64(value interface{}) (res uint64, err error)

尽最大努力将一个值转为uint64类型的数据 string会按顺序尝试将数据解析为int64\uint64\float64\bool,然后再转换为uint64 float会抹去小数 uint8~64、int8~64都会做默认的转换 bool类型的数据,true-1;false-0

func ToUint64Array

func ToUint64Array(value interface{}) (resArray []uint64, err error)

尽最大努力将目标转换为[]uint64

func ToUint8

func ToUint8(value interface{}) (res uint8, err error)

尽最大努力将一个值转为uint8类型的数据 string会按顺序尝试将数据解析为int64\uint64\float64\bool,然后再转换为uint8 float会抹去小数 uint8~64、int8~64都会做默认的转换 bool类型的数据,true-1;false-0

func ToUint8Array

func ToUint8Array(value interface{}) (resArray []uint8, err error)

尽最大努力将目标转换为[]uint8

func ToUintArray

func ToUintArray(value interface{}) (resArray []uint, err error)

尽最大努力将目标转换为[]uint

Types

This section is empty.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL