作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试使用 Go 与数据库交互并遇到
处理小数字段时的问题。
在这个数据库中,大多数基本上是整数字段的字段是
键入为精度为 0 的小数...例如:
type Record struct {
ID uint
CHANGE_DATE uint
...
}
mydate := float32(0)
for rows.Next() {
r := Record{}
row.Scan(&.ID, &mydate)
myrecord.Change_date = uint(mydate)
}
最佳答案
从 RPC 服务器解析 JSON 时,我遇到了同样的问题。我创建了一个函数来将科学记数法字符串转换回 uint,如下所示:
func scientificNotationToUInt(scientificNotation string) (uint, error) {
flt, _, err := big.ParseFloat(scientificNotation, 10, 0, big.ToNearestEven)
if err != nil {
return 0, err
}
fltVal := fmt.Sprintf("%.0f", flt)
intVal, err := strconv.ParseInt(fltVal, 10, 64)
if err != nil {
return 0, err
}
return uint(intVal), nil
}
Playground example
关于json - 避免科学记数法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27512549/
就目前而言,这个问题不适合我们的问答形式。我们希望答案得到事实、引用或专业知识的支持,但这个问题可能会引起辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visit the he
我是一名优秀的程序员,十分优秀!