jsonecho

XML to Rust

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

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

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

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

XML to Rust সম্পর্কে

বড় XML পেলোডের জন্য হাতে মডেল ক্লাস লেখা বিরক্তিকর এবং সেখানেই টাইপো ঢোকে। এখানে একটি নমুনা পেস্ট করুন এবং জেনারেটর কাঠামো বের করে: কোন ফিল্ড আছে, কোনগুলো অবজেক্ট, কোনগুলো অ্যারে এবং প্রতিটি মানের টাইপ কী। আউটপুট serde crate থেকে Serialize ও Deserialize derive করা struct।

XML প্রথমে আমাদের XML to JSON টুলের মতো একইভাবে JSON-এ রূপান্তরিত হয়: অ্যাট্রিবিউট @_ প্রিফিক্স পায় এবং অ্যাট্রিবিউটের পাশের টেক্সট কনটেন্টের নাম #text। সেই ফলাফল থেকে Rust টাইপ তৈরি হয়। ফিল্ডের নাম snake_case-এ রূপান্তরিত হয় এবং আসল নাম আলাদা হলে একটি serde rename অ্যাট্রিবিউট থাকে।

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

Cargo.toml-এ serde ও serde_json যোগ করুন এবং serde_json::from_str::<Root>(&json) কল করুন।

ঐচ্ছিক ফিল্ড হলো Option<T>। null ও বাদ পড়া কী দুটিই None হয়।

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

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

আউটপুট serde crate থেকে Serialize ও Deserialize derive করা struct।

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

আগে XML-কে JSON-এ রূপান্তর করুন (আমাদের XML to JSON টুল একইভাবে তা করে), তারপর Cargo.toml-এ serde ও serde_json যোগ করুন এবং serde_json::from_str::<Root>(&json) কল করুন।

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

ঐচ্ছিক ফিল্ড হলো Option<T>। null ও বাদ পড়া কী দুটিই None হয়।

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

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

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

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

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

সব টুল →