jsonecho

XML เป็น C++

วางเอกสาร XML เพื่อสร้างชนิดข้อมูล C++ ที่ตรงกับโครงสร้าง

กำลังโหลดเครื่องมือ...

วิธีใช้ XML เป็น C++

  1. วางตัวอย่าง XML ที่สะท้อนข้อมูลจริง โดยควรกรอกฟิลด์ที่ไม่บังคับให้ครบด้วย
  2. ตั้งชื่อชนิดข้อมูลหลัก แล้วเลือกว่าจะให้สร้างโค้ดช่วยด้วยหรือสร้างเฉพาะชนิดข้อมูล
  3. คัดลอกโค้ด C++ ที่สร้างไปยังโปรเจกต์ของคุณ

เกี่ยวกับ XML เป็น C++

การเขียนคลาสโมเดลสำหรับข้อมูล XML จำนวนมากด้วยตนเองเป็นงานน่าเบื่อ และพิมพ์ผิดได้ง่าย วางตัวอย่างที่นี่ แล้วเครื่องมือจะวิเคราะห์โครงสร้างว่ามีฟิลด์ใดบ้าง ฟิลด์ใดเป็นออบเจ็กต์หรืออาร์เรย์ และแต่ละค่ามีชนิดข้อมูลอะไร ผลลัพธ์เป็นโครงสร้างในเนมสเปซ quicktype พร้อมฟังก์ชัน from_json และ to_json สำหรับไลบรารี nlohmann/json

XML จะถูกแปลงเป็น JSON อย่างเดียวกับในเครื่องมือ XML เป็น JSON ของเรา @_ การตั้งตัวอักษร และเนื้อหาข้อความข้างหน้าคุณสมบัติ #text. ชนิดข้อมูล C++ จะถูกสร้างจากผลลัพธ์นั้น ผลลัพธ์ต้องใช้ไลบรารี nlohmann/json แบบ header เดียว และโค้ดช่วยเล็กน้อยสำหรับค่าที่ไม่บังคับซึ่งรวมไว้ในผลลัพธ์แล้ว

การใช้โค้ดที่สร้างขึ้น

ใส่หัวหน้า nlohmann json แล้ว auto root = nlohmann::json::parse(text).get<quicktype::Root>();.

สมาชิกเลือกใช้ std::shared_ptr<T> และเป็นไร้ค่า เมื่อคีย์หายไป

คำถามที่พบบ่อย

โค้ด C++ ที่สร้างต้องใช้ไลบรารีหรือส่วนประกอบใด?

ผลลัพธ์เป็นโครงสร้างในเนมสเปซ quicktype พร้อมฟังก์ชัน from_json และ to_json สำหรับไลบรารี nlohmann/json

ผมพิจารณา XML กับผลอย่างไร?

เปลี่ยน XML เป็น JSON ก่อน (เครื่องมือของเรา XML เป็น JSON ทําแบบนี้เหมือนกัน) แล้วใส่หัวหน้า nlohmann json แล้ว auto root = nlohmann::json::parse(text).get<quicktype::Root>();.

จัดการฟิลด์ที่ไม่บังคับและฟิลด์ที่ไม่มีอย่างไร?

สมาชิกเลือกใช้ std::shared_ptr<T> และเป็นไร้ค่า เมื่อคีย์หายไป

เครื่องมือดูมากกว่าหนึ่งระเบียนหรือไม่?

เครื่องมือรู้จักเฉพาะข้อมูลที่อยู่ในตัวอย่างของคุณเท่านั้น ฟิลด์ที่ไม่มีในตัวอย่างจะไม่ปรากฏในชนิดข้อมูลที่สร้างขึ้น และถ้าค่าในตัวอย่างเป็น null เครื่องมือจะระบุชนิดข้อมูลของค่านั้นไม่ได้ วางตัวอย่างที่กรอกข้อมูลให้ครบมากที่สุด หรือวางอาร์เรย์ที่มีหลายระเบียนแตกต่างกัน

ข้อมูล XML ของฉันถูกส่งไปยังเซิร์ฟเวอร์หรือไม่?

ไม่ เมื่อใช้ครั้งแรก เครื่องมือขนาดประมาณ 1 MB จะถูกดาวน์โหลดเข้าเบราว์เซอร์ จากนั้นทุกอย่างจะทำงานในเครื่องของคุณ

เครื่องมือเพิ่มเติมใน แปลงข้อมูลเป็นคลาส

เครื่องมือทั้งหมด →