当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


GO Indent用法及代码示例


GO语言"encoding/json"包中"Indent"函数的用法及代码示例。

用法:

func Indent(dst *bytes.Buffer, src []byte, prefix, indent string) error

Indent 将 JSON-encoded src 的缩进形式附加到 dst。 JSON 对象或数组中的每个元素都从一个新的缩进行开始,该行以前缀开头,后跟根据缩进嵌套的一个或多个缩进副本。附加到 dst 的数据不以前缀或任何缩进开头,以便更容易嵌入到其他格式化的 JSON 数据中。尽管 src 开头的前导空格字符(空格、制表符、回车、换行符)被删除,但 src 末尾的尾随空格字符被保留并复制到 dst。例如,如果 src 没有尾随空格,则 dst 也不会;如果 src 以尾随换行符结尾,则 dst 也是如此。

例子:

package main

import (
	"bytes"
	"encoding/json"
	"log"
	"os"
)

func main() {
	type Road struct {
		Name   string
		Number int
	}
	roads := []Road{
		{"Diamond Fork", 29},
		{"Sheep Creek", 51},
	}

	b, err := json.Marshal(roads)
	if err != nil {
		log.Fatal(err)
	}

	var out bytes.Buffer
	json.Indent(&out, b, "=", "\t")
	out.WriteTo(os.Stdout)
}

输出:

[
=	{
=		"Name": "Diamond Fork",
=		"Number": 29
=	},
=	{
=		"Name": "Sheep Creek",
=		"Number": 51
=	}
=]

相关用法


注:本文由纯净天空筛选整理自golang.google.cn大神的英文原创作品 Indent。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。