1
0
mirror of https://github.com/charlienet/go-mixed.git synced 2025-07-17 16:12:42 +08:00
This commit is contained in:
2022-05-06 15:31:57 +08:00
parent e02fe8d846
commit 25af24d7c0
3 changed files with 20 additions and 2 deletions

View File

@ -40,6 +40,7 @@ type CamelCase struct {
func (c CamelCase) MarshalJSON() ([]byte, error) {
var keyMatchRegex = regexp.MustCompile(`\"(\w+)\":`)
marshalled, err := Marshal(c.Value)
converted := keyMatchRegex.ReplaceAllFunc(
marshalled,

17
json/jsonconv_test.go Normal file
View File

@ -0,0 +1,17 @@
package json_test
import (
"testing"
"github.com/charlienet/go-mixed/json"
)
func TestNameConvert(t *testing.T) {
d := struct {
UserName string
Age int
}{UserName: "测试", Age: 13}
t.Log(json.StructToJsonIndent(json.CamelCase{Value: d}))
t.Log(json.StructToJsonIndent(json.SnakeCase{Value: d}))
}

View File

@ -2,13 +2,13 @@ package json
import "github.com/charlienet/go-mixed/bytesconv"
func StructToJsonIndent(obj interface{}) string {
func StructToJsonIndent(obj any) string {
b, _ := MarshalIndent(obj, "", " ")
return bytesconv.BytesToString(b)
}
// 结构转换为json字符串
func StructToJson(obj interface{}) string {
func StructToJson(obj any) string {
b, _ := Marshal(obj)
return bytesconv.BytesToString(b)
}