jsonecho

XML to Crystal

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

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

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

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

XML to Crystal সম্পর্কে

বড় XML পেলোডের জন্য হাতে মডেল ক্লাস লেখা বিরক্তিকর এবং সেখানেই টাইপো ঢোকে। এখানে একটি নমুনা পেস্ট করুন এবং জেনারেটর কাঠামো বের করে: কোন ফিল্ড আছে, কোনগুলো অবজেক্ট, কোনগুলো অ্যারে এবং প্রতিটি মানের টাইপ কী। আউটপুট স্ট্যান্ডার্ড লাইব্রেরির JSON::Serializable অন্তর্ভুক্ত করা ক্লাস।

XML প্রথমে আমাদের XML to JSON টুলের মতো একইভাবে JSON-এ রূপান্তরিত হয়: অ্যাট্রিবিউট @_ প্রিফিক্স পায় এবং অ্যাট্রিবিউটের পাশের টেক্সট কনটেন্টের নাম #text। সেই ফলাফল থেকে Crystal টাইপ তৈরি হয়। প্রপার্টি property ম্যাক্রো দিয়ে ঘোষণা করা হয় এবং দরকার হলে JSON::Field অ্যানোটেশন দিয়ে কী ম্যাপ করা হয়।

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

পার্স করতে Root.from_json(json) এবং লিখতে to_json কল করুন।

ঐচ্ছিক ফিল্ড String | Nil-এর মতো ইউনিয়ন টাইপ।

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

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

আউটপুট স্ট্যান্ডার্ড লাইব্রেরির JSON::Serializable অন্তর্ভুক্ত করা ক্লাস।

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

আগে XML-কে JSON-এ রূপান্তর করুন (আমাদের XML to JSON টুল একইভাবে তা করে), তারপর পার্স করতে Root.from_json(json) এবং লিখতে to_json কল করুন।

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

ঐচ্ছিক ফিল্ড String | Nil-এর মতো ইউনিয়ন টাইপ।

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

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

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

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

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

সব টুল →