本文整理汇总了Golang中encoding/json.Number类的典型用法代码### 示例。如果您正苦于以下问题:Golang Number类的具体用法?Golang Number怎么用?Golang Number使用的例子?那么恭喜您, 这里精选的类代码### 示例或许可以为您提供帮助。
在下文中一共展示了Number类的13个代码### 示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Golang代码### 示例。
示例1: UnmarshalJSON
func (f *Float) UnmarshalJSON(in []byte) error {
if len(in) == 0 {
return &json.UnmarshalTypeError{Value: "number", Type: reflect.TypeOf(f)}
}
var err error
var next float64
switch in[0] {
case 'n', 't', 'f', '{', '[':
return &json.UnmarshalTypeError{Value: badJSONValue(in), Type: reflect.TypeOf(f)}
case '"':
var new json.Number
err = json.Unmarshal(in, &new)
if err == nil {
next, err = new.Float64()
if err != nil {
err = &json.UnmarshalTypeError{Value: "quoted number " + new.String(), Type: reflect.TypeOf(f)}
}
}
default:
err = json.Unmarshal(in, &next)
}
if err == nil {
f.Set(next)
}
return err
}
开发者ID:nilium,项目名称:dagr,代码行数:30,代码来源:field.go
示例2: NumberToFloat
func NumberToFloat(num json.Number) (value float64) {
var err error
value, err = num.Float64()
if err != nil {
value = 0.0
}
return
}
开发者ID:ifzz,项目名称:btcrobot,代码行数:8,代码来源:kline.go
示例3: convertNumber
// convertNumber converts a json.Number to an int64 or float64, or returns an error
func convertNumber(n json.Number) (interface{}, error) {
// Attempt to convert to an int64 first
if i, err := n.Int64(); err == nil {
return i, nil
}
// Return a float64 (default json.Decode() behavior)
// An overflow will return an error
return n.Float64()
}
开发者ID:CodeJuan,项目名称:kubernetes,代码行数:10,代码来源:json.go
示例4: resultErrorFormatJsonNumber
// formats a number so that it is displayed as the smallest string possible
func resultErrorFormatJsonNumber(n json.Number) string {
if int64Value, err := n.Int64(); err == nil {
return fmt.Sprintf("%d", int64Value)
}
float64Value, _ := n.Float64()
return fmt.Sprintf("%g", float64Value)
}
开发者ID:haj,项目名称:kompose,代码行数:11,代码来源:utils.go
示例5: UnmarshalJSON
func (e *expirationTime) UnmarshalJSON(b []byte) error {
var n json.Number
err := json.Unmarshal(b, &n)
if err != nil {
return err
}
i, err := n.Int64()
if err != nil {
return err
}
*e = expirationTime(i)
return nil
}
开发者ID:st3v3nle,项目名称:cadvisor,代码行数:13,代码来源:oauth2.go
最后编辑: kuteng 文档更新时间: 2021-08-23 19:14 作者:kuteng