[encoding/json] 配列変数のデータをJSON形式に変換する

説明

配列変数のデータをJSON形式に変換するにはencoding/jsonパッケージを読み込ませます。その後、json.Marshal()を使って配列変数の内容をJSON形式に変換します(配列が構造体の場合でも通常の変数と同じように処理されます)。json.Marshal()の戻り値は多値になっており、最初が変換されたJSONデータ、2番目がエラー情報になります。変換されたJSON形式のデータを、そのままPrintln()で出力するとバイナリ値を数値に変換し出力してしまうため、string()を使って文字列に変換し出力しています。

サンプル [サンプルをダウンロード]

package main
import (
"encoding/json"
"fmt"
"os"
)
func main() {
type computer struct {
No int // 番号
Name string // パソコン名
Maker string // メーカー名
}
myPCData := [...] computer {
{
No : 700,
Name : "mz-700",
Maker : "SHARP",
},
{
No : 7,
Name : "FM-7",
Maker : "富士通",
},
{
No : 6001,
Name : "PC-6001",
Maker : "NEC",
},
}
data, err := json.Marshal(myPCData)
if err != nil {
os.Exit(1)
}
fmt.Println(string(data))
}

実行結果

Go言語を使ったプログラムの実行結果