jsonecho

XML to Go

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

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

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

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

XML to Go সম্পর্কে

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

XML প্রথমে আমাদের XML to JSON টুলের মতো একইভাবে JSON-এ রূপান্তরিত হয়: অ্যাট্রিবিউট @_ প্রিফিক্স পায় এবং অ্যাট্রিবিউটের পাশের টেক্সট কনটেন্টের নাম #text। সেই ফলাফল থেকে Go টাইপ তৈরি হয়। নাম PascalCase-এ এক্সপোর্ট হয় এবং ID ও URL-এর মতো সংক্ষিপ্ত রূপ বড় হাতের অক্ষরে রাখা হয়, যা লিন্টার প্রত্যাশা করে।

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

UnmarshalRoot(data) কল করুন, অথবা শুধু টাইপ কপি করে থাকলে json.Unmarshal(data, &root) ব্যবহার করুন।

ঐচ্ছিক ফিল্ড omitempty ট্যাগসহ পয়েন্টার, তাই বাদ পড়া ও শূন্য মান আলাদা করা যায়।

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

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

আউটপুট json struct ট্যাগসহ struct, সঙ্গে Unmarshal ও Marshal সহায়ক ফাংশন।

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

আগে XML-কে JSON-এ রূপান্তর করুন (আমাদের XML to JSON টুল একইভাবে তা করে), তারপর UnmarshalRoot(data) কল করুন, অথবা শুধু টাইপ কপি করে থাকলে json.Unmarshal(data, &root) ব্যবহার করুন।

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

ঐচ্ছিক ফিল্ড omitempty ট্যাগসহ পয়েন্টার, তাই বাদ পড়া ও শূন্য মান আলাদা করা যায়।

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

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

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

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

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

সব টুল →