মূল বিষয়বস্তুতে যান
ToolMug

সরাতে ↑ ↓, খুলতে Enter, বন্ধ করতে Esc চাপুন।

JSON থেকে Go Struct কনভার্টার

JSON পেস্ট করে json tags-সহ Go struct definition পান, যা encoding/json-এ ব্যবহারের জন্য প্রস্তুত। Field name-গুলো Go convention মেনে চলে, nested object নিজস্ব type-এ পরিণত হয় এবং column-গুলো gofmt-এর মতো সারিবদ্ধ থাকে।

আপনার ব্রাউজারে চলে — আপনি যা দেন তার কিছুই আপলোড হয় না

কীভাবে ব্যবহার করবেন

  1. একটি JSON নমুনা পেস্ট করুন, অথবা “নমুনা লোড করুন” বোতামে ক্লিক করুন।
  2. রুট struct-এর নাম সেট করুন।
  3. উৎপন্ন code কপি বা ডাউনলোড করে আপনার package-এ যোগ করুন।

অপশনগুলোর ব্যাখ্যা

রুট টাইপের নাম
শীর্ষ স্তরের struct-এর নাম। Nested struct-গুলোর নাম তাদের key অনুসারে হয়।

উদাহরণ

{"user_id": 7, "email": null, "tags": ["a"]} থেকে তৈরি হয়:

type Root struct {
	UserID int64    `json:"user_id"`
	Email  any      `json:"email"`
	Tags   []string `json:"tags"`
}

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

ফিল্ডের নাম কীভাবে বাছাই করা হয়?

Key-গুলো exported PascalCase নামে রূপ নেয়, আর Go-এর সুপারিশ অনুযায়ী প্রচলিত initialism-গুলো বড় হাতের অক্ষরে লেখা হয় — user_id হয়ে যায় UserID এবং homeUrl হয়ে যায় HomeURL। মূল key-টি json tag-এ রাখা হয়।

কখন pointer এবং omitempty ব্যবহার করা হয়?

কিছু array item-এ key অনুপস্থিত থাকলে omitempty যোগ হয়। কোনো value কখনো null হলে সেটি pointer (*string) হয়, যাতে null-কে খালি value থেকে আলাদা করে বোঝা যায়; ঐচ্ছিক nested struct-ও pointer হয়।

কোন number type ব্যবহার করা হয়?

পূর্ণসংখ্যা int64 হয়, আর দশমিকসহ সংখ্যা float64 হয়। বিভিন্ন item-এ কোনো key-তে উভয় ধরনের সংখ্যা থাকলে float64 ব্যবহার করা হয়।

আমার JSON কি আপলোড করা হয়?

না। type-গুলো আপনার ব্রাউজারেই তৈরি হয়, তাই বাস্তব ডেটাসহ API response আপনার ডিভাইসেই থাকে।

গোপনীয়তা

এই টুলটি পুরোপুরি আপনার ব্রাউজারে চলে। আপনার ফাইল ও লেখা আপনার ডিভাইসেই প্রসেস হয় এবং কখনো আমাদের সার্ভারে আপলোড হয় না।

সম্পর্কিত টুল