golang 将reader数据转为json字符串
时间: 2023-09-09 20:12:42 浏览: 109
把对象转换为JSON字符串
可以使用 `json` 包的 `Decoder` 类型将 `io.Reader` 转换为 JSON 字符串。
下面是一个示例代码:
```go
package main
import (
"encoding/json"
"fmt"
"io"
"strings"
)
func main() {
data := `{"name": "Alice", "age": 30}`
reader := strings.NewReader(data)
var jsonData map[string]interface{}
err := json.NewDecoder(reader).Decode(&jsonData)
if err != nil {
panic(err)
}
jsonBytes, err := json.Marshal(jsonData)
if err != nil {
panic(err)
}
jsonStr := string(jsonBytes)
fmt.Println(jsonStr)
}
```
在这个例子中,我们首先创建了一个包含 JSON 数据的 `strings.Reader` 对象。然后,我们使用 `json.NewDecoder()` 方法创建了一个 `Decoder` 对象,并调用 `Decode()` 方法将 JSON 数据解码到 `jsonData` 变量中。
接下来,我们使用 `json.Marshal()` 方法将 `jsonData` 转换为 JSON 字节数组,并将其转换为字符串类型。最后,我们打印输出了 JSON 字符串。
阅读全文