[解決済み] Golang で文字列を構造体のようにアンマーシャリングする
2022-02-09 23:15:47
質問
Golangで以下のような文字列を渡されました。
var cars = [
{
model: "SLR",
brand: "Mercedes",
prices: [520, 730],
},
{
model: "M4",
brand: "BMW",
prices: [420, 820],
}
]
JSON文字列でないことは分かっています。 この文字列をアンマーシャルして、各車両のモデルを取得する方法はありますか? 各車両のモデルを取得するにはどうすればよいですか? それとも、そもそもの質問が間違っているのでしょうか?ご意見をお聞かせください。
解決方法は?
入力にyamlを使用するとうまくいくかもしれません。
package main
import (
"fmt"
"gopkg.in/yaml.v2"
)
func main() {
const cars = `[ { model: "SLR", brand: "Mercedes", prices: [520, 730], }, { model: "M4", brand: "BMW", prices: [420, 820], } ]`
type Car struct {
Model string `yaml:"model"`
Brand string `yaml:"brand"`
Prices []int `yaml:"prices"`
}
var carsArr []Car
if err := yaml.Unmarshal([]byte(cars), &carsArr); err != nil {
panic(err)
}
fmt.Printf("Cars: %+v", carsArr)
// Cars: [{Model:SLR Brand:Mercedes Prices:[520 730]} {Model:M4 Brand:BMW Prices:[420 820]}]
}
こちらでお試しください。 https://play.golang.org/p/hRQXSes1tGi
関連
-
[解決済み] JSON文字列を安全にオブジェクトに変換する
-
[解決済み] JSオブジェクトをJSON文字列に変換する
-
[解決済み] JavaScriptSerializer - 列挙型を文字列としてJSONシリアライズする
-
[解決済み] C++でクラスと構造体はいつ使い分けるべきか?
-
[解決済み] C++の'struct'と'typedef struct'の違い?
-
[解決済み] .NETにおけるstructとclassの違いは何ですか?
-
[解決済み] 循環構造をJSONのような形式で印刷するにはどうすればよいですか?
-
[解決済み] 構造体変数をコンソールに表示するには?
-
[解決済み] jqを使用してJSONからキー名を取得する方法
-
[解決済み] Scalaの標準クラスを使ってScalaでJSONをパースするには?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] TTLファイルフォーマット - これが何なのかさっぱり分からない
-
[解決済み] Golang で文字列を構造体のようにアンマーシャリングする
-
[解決済み] マニフェスト 行: 1, 列: 1, 構文エラー
-
[解決済み] 正しいJSONコンテンツタイプは何ですか?
-
[解決済み] バイナリデータをJSON文字列で。Base64より優れたもの
-
[解決済み] Node.js プロジェクトの package.json ファイルを自動的にビルドする方法はありますか?
-
jsonファイルのインポートエラー、TypeError expected string or buffer
-
[解決済み] 構造体に複数のネームタグを定義する方法
-
[解決済み] fs.writeFileSyncによるJSONオブジェクトのJSONファイルへの書き込み
-
[解決済み] ヘッダー値:application/vnd.api+json