interface转string输出打印


前言

在开发过程中,有时我们使用interface类型接受某些参数接口或返回类型,但输出时,比如记录日志时存在很多不方便情况,输出string发现输出的乱七八糟,因为interface在输出时并不能给你转为string,处于输出方便,总结两种方法在此,上代码:


一、interface 转json再转string

func main() {
   
	//sendGetRequestWithParams()
	json := JSONData{
   }
	stri := json.NewJSONData()
	fmt.Println("开始学习 " + stri)
}
func (*JSONData) NewJSONData() string {
   
	json := &JSONData{
   
		Code:    200,
		Message: "OK",
		Result: Result{
   
			AppID:        1,
			AccessToken:  "aB2XvR5wL9yOzQ8",
			ExpireTime:   1609459200,
			RefreshToken: "<PASSWORD>",
		},
	}
	return interfaceTOString(json)
}

func interfaceTOString(v interface{
   }) string {
   
	jsonData, err := json.Marshal(v)
	if err != nil {
   
		fmt.Println("Error:", err)
		return ""
	}
	jsonString := string(jsonData)
	return jsonString
}
type JSONData struct {
   
	Code    int    `json:"code"`
	Message string `json:"message"`
	Result  Result `json:"result"`
}
type Result struct {
   
	AppID        int    `json:"appId"`
	AccessToken  string `json:"accessToken"`
	ExpireTime   int    `json:"expireTime"`
	RefreshToken string `json:"refreshToken"`
}

输出:

[Running
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值