cvt是一个简单、安全、高效的转换任意数据类型的Go语言工具包,支持自定义类型、提取结构体字段和值。
安装goget-ugithub.com/shockerli/cvt使用支持 error以 E 结尾的方法 __E():当转换失败时会返回错误
cvt.ItE("12")//12,ilcvt.Float64E("12.34")//12.34,ilcvt.StrigE(12.34)//"12.34",ilcvt.BoolE("false")//false,il自定义类型、指针类型自动解引用,并找到基本类型,完全支持自定义类型的转换
typeNamestrigvarameName="jioby"cvt.StrigE(ame)//jioby,ilcvt.StrigE(&ame)//jioby,il忽略 error名称不以 E 结尾的方法,如果转换失败,不会返回错误,会返回零值
cvt.It("12")//12(success)cvt.It(struct{}{})//0(failed)默认值如果转换失败,返回默认值
cvt.It(struct{}{},12)//12cvt.Float("hello",12.34)//12.34更多示例上千个单元测试用例,覆盖率近100%,所有示例可通过单元测试了解:*_test.go
APIboolBoolBoolEitItItEIt8It8EIt16It16EIt32It32EIt64It64EUitUitEUit8Uit8EUit16Uit16EUit32Uit32EUit64Uit64EstrigStrigStrigEfloatFloat32Float32EFloat64Float64EtimeTimeTimeEsliceColumsE:类似于PHP中的 array_colum,FieldE 函数的切片版本,返回 []iterface{}FieldE:取 map 或 struct 的字段值,返回 iterface{}KeysE:取 map 的键名,返回 []iterface{}Slice / SliceE:转换成 []iterface{}SliceItE:转换成 []itSliceIt64E:转换成 []it64SliceFloat64E:转换成 []float64SliceStrigE:转换成 []strig
评论