- xml - AJAX/Jquery XML 解析
- 具有多重继承的 XML 模式
- .net - 枚举序列化 Json 与 XML
- XML 简单类型、简单内容、复杂类型、复杂内容
是否有开箱即用的 golang 方法可以让我对 go 结构进行字符串化(序列化为字符串)。
用零值序列化是一种选择,但是一个丑陋的选择。
最佳答案
这是一个示例程序,它使用 encoding/json
包来序列化和反序列化一个简单的结构。请参阅代码注释以获取解释。
请注意,我在这里省略了错误处理。
package main
import (
"bytes"
"encoding/json"
"fmt"
)
// your data structure need not be exported, i.e. can have lower case name
// all exported fields will by default be serialized
type person struct {
Name string
Age int
}
func main() {
writePerson := person{
Name: "John",
Age: 32,
}
// encode the person as JSON and write it to a bytes buffer (as io.Writer)
var buffer bytes.Buffer
_ = json.NewEncoder(&buffer).Encode(writePerson)
// this is the JSON-encoded text
// output: {"Name":"John","Age":32}
fmt.Println(string(buffer.Bytes()))
// deocde the person, reading from the buffer (as io.Reader)
var readPerson person
_ = json.NewDecoder(&buffer).Decode(&readPerson)
// output: {John 32}
fmt.Println(readPerson)
}
关于serialization - golang stringize struct 结构(没有数据),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39520249/
使用 Pelles C 我想显示或记录一个无符号字符数组。是否可以使用 stringize 宏将整个数组显示为十六进制值,而不是使用 printf(%x) 迭代数组? 最佳答案 没有。字符串化仅将指定
我有一些字符串常量,后面的常量部分由前面的组成 const char* ID = "01099BB2"; const char* FS_LOCATION_ROOT = "fs:/~0x"
至少一些 C 预处理器允许您将宏的值而不是它的名称字符串化,方法是将宏通过一个类似函数的宏传递给另一个将其字符串化的宏: #define STR1(x) #x #define STR2(x) STR1
至少一些 C 预处理器允许您将宏的值而不是它的名称字符串化,方法是将宏通过一个类似函数的宏传递给另一个将其字符串化的宏: #define STR1(x) #x #define STR2(x) STR1
我想知道这段代码输出背后的原因。我想不出答案。 #define f(a,b) a##b #define g(a) #a #define h(a) g(a) void main() { print
是否有开箱即用的 golang 方法可以让我对 go 结构进行字符串化(序列化为字符串)。 用零值序列化是一种选择,但是一个丑陋的选择。 最佳答案 这是一个示例程序,它使用 encoding/json
我需要将一个 #define 参数字符串化为一个宽字符串。 所以当 #define c(x) x,#x 用作: {c(maria),0,false}, 给出: {maria,"maria",0,fal
我是一名优秀的程序员,十分优秀!