Bagaimana cara mengurai menggunakan boost jika bukan json, tetapi mirip?

Saya memiliki aplikasi yang membaca beberapa parameter dari file json, tetapi sekarang file tersebut telah berubah (itu bukan keputusan saya). Filenya kelihatannya hampir sama, tapi bukannya {} malah [], jadi kalau sampai sekarang kelihatannya seperti

{
  "A":
  {
    "a":"a",
    "b":"b"
  }
}

sekarang menjadi seperti ini:

[
  "A":
  [
    "a":"a",
    "b":"b"
  ]
]

Aplikasi saya ditulis dalam C++, jadi saya menggunakan boost untuk mengurai file json, tetapi sekarang saya mencari parser baru, apakah ada cara untuk melakukannya dengan boost?

Saya sudah mulai mencari, tetapi saya juga mengajukan pertanyaan sambil berpikir bahwa mungkin seseorang dapat membantu saya lebih cepat daripada saya menemukan jawabannya. Terima kasih


person sop    schedule 19.02.2015    source sumber
comment
Anda mungkin malas dan hanya mengganti karakter dari masukan Anda, lalu memprosesnya persis seperti yang Anda lakukan sekarang. Kemudian periksa apakah ada penurunan kinerja yang nyata.   -  person Benjamin Lindley    schedule 19.02.2015
comment
Aplikasi saya ditulis dalam C++, jadi saya menggunakan boost untuk mengurai file json – tidak, Anda pastinya tidak harus menggunakan Boost.   -  person The Paramagnetic Croissant    schedule 19.02.2015
comment
@TheParamagneticCroissant: benar, saya tidak harus menggunakan boost, tapi saya sudah menggunakannya :)   -  person sop    schedule 19.02.2015


Jawaban (1)


Sepertinya turunan YAML/Mustache/JSON/... Lainnya.

Tanpa spesifikasi formal, sulit untuk menilai upaya apa yang diperlukan, namun berikut adalah daftar implementasi tata bahasa serupa di Boost Spirit, dengan jumlah kelengkapan fitur yang bervariasi:

Penerapan implementasi parser mainan JSON:

person sehe    schedule 19.02.2015