jsonecho

XML to C++

একটি XML ডকুমেন্ট পেস্ট করুন এবং এর কাঠামোর সঙ্গে মেলে এমন C++ টাইপ পান।

টুলটি লোড হচ্ছে...

XML to C++ কীভাবে ব্যবহার করবেন

  1. একটি প্রতিনিধিত্বমূলক XML নমুনা পেস্ট করুন, আদর্শভাবে যেটিতে সব ঐচ্ছিক ফিল্ড পূরণ করা আছে।
  2. রুট টাইপের নাম ঠিক করুন এবং সহায়ক কোডও চান নাকি শুধু টাইপ তা ঠিক করুন।
  3. তৈরি হওয়া C++ কোড আপনার প্রজেক্টে কপি করুন।

XML to C++ সম্পর্কে

বড় XML পেলোডের জন্য হাতে মডেল ক্লাস লেখা বিরক্তিকর এবং সেখানেই টাইপো ঢোকে। এখানে একটি নমুনা পেস্ট করুন এবং জেনারেটর কাঠামো বের করে: কোন ফিল্ড আছে, কোনগুলো অবজেক্ট, কোনগুলো অ্যারে এবং প্রতিটি মানের টাইপ কী। আউটপুট quicktype নেমস্পেসে struct, সঙ্গে nlohmann/json লাইব্রেরির জন্য from_json ও to_json ফাংশন।

XML প্রথমে আমাদের XML to JSON টুলের মতো একইভাবে JSON-এ রূপান্তরিত হয়: অ্যাট্রিবিউট @_ প্রিফিক্স পায় এবং অ্যাট্রিবিউটের পাশের টেক্সট কনটেন্টের নাম #text। সেই ফলাফল থেকে C++ টাইপ তৈরি হয়। আউটপুটের জন্য nlohmann/json সিঙ্গেল হেডার লাইব্রেরি লাগে, সঙ্গে ঐচ্ছিক মানের জন্য একটি ছোট সহায়ক ব্লক যা আউটপুটেই অন্তর্ভুক্ত।

তৈরি কোড ব্যবহার করা

nlohmann json হেডার ইনক্লুড করুন, তারপর auto root = nlohmann::json::parse(text).get<quicktype::Root>();।

ঐচ্ছিক সদস্য std::shared_ptr<T> ব্যবহার করে এবং কী না থাকলে null হয়।

সচরাচর জিজ্ঞাসিত প্রশ্ন

তৈরি C++ কোড কিসের ওপর নির্ভর করে?

আউটপুট quicktype নেমস্পেসে struct, সঙ্গে nlohmann/json লাইব্রেরির জন্য from_json ও to_json ফাংশন।

ফলাফল দিয়ে আমি কীভাবে XML পার্স করব?

আগে XML-কে JSON-এ রূপান্তর করুন (আমাদের XML to JSON টুল একইভাবে তা করে), তারপর nlohmann json হেডার ইনক্লুড করুন, তারপর auto root = nlohmann::json::parse(text).get<quicktype::Root>();।

ঐচ্ছিক ও বাদ পড়া ফিল্ড কীভাবে সামলানো হয়?

ঐচ্ছিক সদস্য std::shared_ptr<T> ব্যবহার করে এবং কী না থাকলে null হয়।

জেনারেটর কি একাধিক রেকর্ড দেখে?

এটি শুধু আপনার নমুনায় যা আছে তা-ই জানে। কোনো ফিল্ড আপনার উদাহরণে না থাকলে তা টাইপে আসবে না, এবং আপনার উদাহরণে কোনো মান null হলে তার টাইপ অজানা। যতটা সম্ভব ফিল্ড পূরণ করা একটি উদাহরণ পেস্ট করুন, অথবা একাধিক ভিন্ন রেকর্ডসহ একটি অ্যারে পেস্ট করুন।

আমার XML কি সার্ভারে পাঠানো হয়?

না। জেনারেটর প্রথমবার ব্যবহারের সময় আপনার ব্রাউজারে ডাউনলোড হয়, প্রায় 1 MB, এবং সবকিছু লোকালি চলে।

ডেটা থেকে ক্লাস-এ আরও

সব টুল →