在数据库中,我有一个类型的字段,int64我在其中存储 unix 时间戳。然后我想将它作为普通datetime的字符串呈现给用户。但是,它会失败。这是一个简单的例子。package mainimport ( "fmt" "strconv")func main() { var a int64 a = 1658545089 tm, err := strconv.ParseInt(string(a), 10, 64) if err != nil { panic(err) } fmt.Println(tm)}===>panic: strconv.ParseInt: parsing "�": invalid syntax这里发生了什么?
1 回答
慕慕森
TA贡献1856条经验 获得超17个赞
这是因为您正在尝试使用字符串转换 int64 尝试使用 strconv.FormatInt(a, 10)
package main
import (
"fmt"
"strconv"
)
func main() {
var a int64
a = 1658545089
tm, err := strconv.ParseInt(strconv.FormatInt(a, 10), 10, 64)
if err != nil {
panic(err)
}
fmt.Println(tm)
}
当您尝试转换覆盖字符串()的整数时,在 golang 中它将获得相应的 ascii 字符 https://en.cppreference.com/w/cpp/language/ascii
在某个整数之后,它只会显示 �
- 1 回答
- 0 关注
- 362 浏览
添加回答
举报
0/150
提交
取消