1 Star 1 Fork 0

ysc / yu

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
convert.go 1.13 KB
一键复制 编辑 原始数据 按行查看 历史
ysc 提交于 2023-01-13 15:05 . remake
package convert
import (
"encoding/json"
"time"
"google.golang.org/protobuf/encoding/protojson"
"google.golang.org/protobuf/proto"
)
// StrTime 将时间戳转成字符串
func StrTime(timestamp int64, timeLayout string) string {
if timestamp == 0 {
return ""
}
return time.Unix(timestamp, 0).Format(timeLayout)
}
// UnixTime 将字符串转成时间戳
func UnixTime(timeStr, layout string) int64 {
date, err := time.ParseInLocation(layout, timeStr, time.Local)
if err != nil {
return 0
}
return date.Unix()
}
// ProtoToJson 转换proto为json string
func ProtoToJson(m proto.Message) string {
d, _ := protojson.MarshalOptions{EmitUnpopulated: true}.Marshal(m)
return string(d)
}
// JsonToProto 转换json string为proto
func JsonToProto(d string, m proto.Message) {
protojson.UnmarshalOptions{DiscardUnknown: true}.Unmarshal([]byte(d), m)
}
// StructToJson 转换struct为json string
func StructToJson(data interface{}) string {
b, _ := json.Marshal(data)
return string(b)
}
// JsonToStruct 转换json string为struct,忽略转换错误
func JsonToStruct(data string, v interface{}) {
json.Unmarshal([]byte(data), v)
}
Go
1
https://gitee.com/yscsky/yu.git
git@gitee.com:yscsky/yu.git
yscsky
yu
yu
v0.2.1

搜索帮助

53164aa7 5694891 3bd8fe86 5694891