Omnikit
ডেভফাইলঅর্থসব টুল
Ctrl K
ডেভেলপার টুলফাইল টুলঅর্থ ক্যালকুলেটরসব টুল
হোমডেভেলপার টুলJSON থেকে Kotlin ডেটা ক্লাস কনভার্টার
EnglishالعربيةবাংলাDeutschEspañolFrançaisPolskiPortuguêsРусский

JSON থেকে Kotlin ডেটা ক্লাস কনভার্টার

ডেভ

একটি JSON নমুনাকে kotlinx.serialization, Gson বা Moshi-এর জন্য Kotlin ডেটা ক্লাসে রূপান্তর করুন

আপনার ব্রাউজারে চলে। আপনি যা লেখেন তা কোথাও পাঠানো হয় না। যাচাই করা হয়েছে 16 অক্টোবর, 2026।

একটি JSON নমুনা পেস্ট করুন আর kotlinx.serialization, Gson বা Moshi-এর জন্য Kotlin ডেটা ক্লাস পান। পূর্ণসংখ্যা হয় Int, 2,147,483,647-এর বেশি হলে Long, যেকোনো দশমিক একটি প্রপার্টিকে Double করে, একটি null মান একে nullable করে, আর কিছু অবজেক্টে অনুপস্থিত একটি কী হয় T? = null, যাতে 3টি লাইব্রেরিই এটি ডিকোড করতে পারে।

এই পৃষ্ঠাটি ইংরেজি মূল লেখা থেকে যন্ত্রের সাহায্যে অনুবাদ করা হয়েছে। এই অনুবাদটি এখনও কোনো মানুষ পর্যালোচনা করেননি, তাই ইংরেজি সংস্করণটিকেই নির্ভরযোগ্য ধরুন। ইংরেজি মূল লেখাটি পড়ুন

এরপর:
  • JSON থেকে Java ক্লাস কনভার্টার একটি JSON নমুনাকে Jackson-এর জন্য অ্যানোটেট করা Java POJO, রেকর্ড বা Lombok ক্লাসে রূপান্তর করুন
  • JSON ফরম্যাটার ও ভ্যালিডেটর JSON ফরম্যাট, যাচাই, মিনিফাই ও সাজান, প্রতিটি ত্রুটির সঠিক অবস্থান সহ

কীভাবে JSON-কে Kotlin ডেটা ক্লাসে রূপান্তর করবেন

1

বাঁ দিকের বাক্সে একটি JSON নমুনা পেস্ট করুন, যেমন একটি API রেসপন্স।

2

লেখার সাথে সাথে Kotlin ডেটা ক্লাস দেখা যায়, প্রতিটি অবজেক্টের জন্য একটি, camelCase প্রপার্টি এবং যেখানে কী আলাদা সেখানে একটি অ্যানোটেশনসহ।

3

kotlinx.serialization, Gson বা Moshi বেছে নিন, দরকার হলে val-এর বদলে var, আর রুট ক্লাসের নাম।

4

কপি করুন চাপুন, অথবা Models.kt সংরক্ষণ করতে ডাউনলোড চাপুন।

JSON থেকে Kotlin ডেটা ক্লাস কনভার্টার সম্পর্কে

Kotlin JSON-কে ডেটা ক্লাসে পড়ে, আর প্রতিটি অবজেক্টের জন্য এমন একটি ক্লাস দরকার যার প্রপার্টিগুলোর টাইপ সঠিক, null-যোগ্যতা সঠিক এবং নিজের কী-তে ফেরার একটি উপায় আছে। এই কনভার্টার একটি নমুনা থেকে সেই ক্লাসগুলো লেখে, তাই একটি লম্বা API রেসপন্স এক পেস্টেই Kotlin হয়ে যায়।

টাইপ কীভাবে বেছে নেওয়া হয়।

JSON মান Kotlin টাইপ
"text" String
true / false Boolean
42 (শুধু পূর্ণসংখ্যা) Int, অথবা 32 বিটের বেশি হলে Long
4.5 (কোনো দশমিক দেখা গেলে) Double
null, সাথে আরেকটি টাইপ String?, Int?
শুধু null, বা মিশ্র ধরন JsonElement? বা Any?
[ ... ] List<...>
{ } ফাঁকা JsonObject বা Map<String, Any?>
{ ... } নিজস্ব একটি ডেটা ক্লাস

অনুপস্থিত কী। একটি অ্যারের সব অবজেক্ট মিলে একটি ক্লাস হয়। যে কী কিছু অবজেক্টে বাদ থাকে, সেটি null ডিফল্টসহ nullable হয়, কারণ kotlinx.serialization ও Moshi ডিফল্ট ছাড়া অনুপস্থিত কী-কে ত্রুটি ধরে। kotlinx.serialization এমন কী-ও প্রত্যাখ্যান করে যার জন্য কোনো প্রপার্টি নেই, তাই নমুনার প্রতিটি কী একটি করে প্রপার্টি পায়।

নাম। প্রপার্টিগুলো lowerCamelCase-এ থাকে। এতে কী বদলে গেলে, যেমন user_name থেকে userName, লাইব্রেরি অনুযায়ী প্রপার্টিটি @SerialName, @SerializedName বা @Json(name = ...) বহন করে। class-এর মতো কীওয়ার্ড ব্যাকটিকের মধ্যে লেখা হয়। অ্যানোটেশনের স্ট্রিংয়ে ডলার চিহ্ন এস্কেপ করা হয়, কারণ নইলে Kotlin এটিকে টেমপ্লেট হিসেবে পড়ত।

অপশন। val-এর বদলে var পরিবর্তনযোগ্য প্রপার্টি দেয়। একটি ফাঁকা অবজেক্ট সাধারণ ক্লাস হয়, কারণ একটি ডেটা ক্লাসে অন্তত একটি প্রপার্টি লাগে। আপনি নাম না দিলে রুট ক্লাসের নাম Root।

প্রতিটি আউটপুট যাচাই করা হয়েছে Kotlin আবার পড়ে এবং kotlinx.serialization-এর ডিফল্ট নিয়মে 9টি নমুনা ডিকোড করে। আপনি যা পেস্ট করেন তার কিছুই ব্রাউজারের বাইরে যায় না।

সাধারণ জিজ্ঞাসা

কীভাবে JSON-কে Kotlin ডেটা ক্লাসে রূপান্তর করব?

কনভার্টারে একটি JSON নমুনা পেস্ট করুন, পাশেই ডেটা ক্লাস দেখা যাবে, প্রতিটি অবজেক্টের জন্য একটি। kotlinx.serialization হলে প্লাগইন যোগ করে Json.decodeFromString<Root>(text) দিয়ে ডিকোড করুন; Gson হলে Gson().fromJson(text, Root::class.java) ব্যবহার করুন; Moshi হলে Root-এর জন্য একটি অ্যাডাপ্টার তৈরি করুন।

কিছু প্রপার্টি কেন = null দিয়ে শেষ হয়?

যে কী অ্যারের কিছু অবজেক্টে বাদ থাকে, সেটি একটি nullable টাইপ এবং ডিফল্ট হিসেবে null পায়। প্রপার্টির ডিফল্ট না থাকলে kotlinx.serialization ও Moshi দুটোই অনুপস্থিত কী প্রত্যাখ্যান করে, তাই এই ডিফল্টই নমুনার প্রতিটি অবজেক্টকে ডিকোড হতে দেয়।

কোন লাইব্রেরি বেছে নেব?

kotlinx.serialization হলো Kotlin-এর নিজস্ব, প্রতিটি Kotlin প্ল্যাটফর্মে চলে এবং কম্পাইলের সময় টাইপ যাচাই করে। codegen সহ Moshi সেই Android প্রজেক্টের জন্য উপযুক্ত যেগুলো আগে থেকেই Retrofit ও Okio ব্যবহার করে। Gson সবচেয়ে পুরোনো এবং কোনো সেটআপ লাগে না, তবে অবজেক্ট তৈরির সময় এটি Kotlin-এর null নিরাপত্তা ও ডিফল্ট মান উপেক্ষা করে।

user_name বা class-এর মতো কী কীভাবে সামলানো হয়?

প্রপার্টিগুলো lowerCamelCase-এ থাকে, তাই user_name হয় userName, আর @SerialName, @SerializedName বা @Json(name = ...) মূল কী-টি রেখে দেয়। যে কী একটি Kotlin কীওয়ার্ড, যেমন class বা object, তা ব্যাকটিকের মধ্যে লেখা হয়, ফলে কী-টিই প্রপার্টির আসল নাম থাকে।

Kotlin-এ সংখ্যাগুলো কোন টাইপ পায়?

পূর্ণসংখ্যা হয় Int, অথবা কোনো মান 2,147,483,647 ছাড়ালে Long, আর নমুনার কোনো মানে দশমিক অংশ থাকলেই ফিল্ডটি Double হয়। ভিন্ন ধরনের মান kotlinx.serialization-এ হয় JsonElement?, আর Gson ও Moshi-তে Any?।

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

না। রূপান্তর আপনার ব্রাউজারেই চলে, কোনো সার্ভারে অনুরোধ যায় না, আর JSON সংরক্ষিত হয় না, তাই টোকেন বা ব্যক্তিগত তথ্যসহ API রেসপন্স আপনার ডিভাইসেই থাকে। ট্যাবটি বন্ধ করলে কিছুই থাকে না।

সূত্র

  • Kotlin documentation, keywords and operatorsHard keywords that need backticks as names
  • Kotlin documentation, coding conventions: naming rulesUpperCamelCase classes, lowerCamelCase properties
  • kotlinx.serialization guide, basic serialization@SerialName, optional properties need defaults, unknown keys are errors
  • Moshi README, Kotlin codegen@JsonClass(generateAdapter = true) and @Json(name = ...)

শেষ যাচাই 16 অক্টোবর, 2026।

হার ও নিয়ম বদলায়; কোনো অঙ্কের ওপর নির্ভর করার আগে সূত্রটি দেখে নিন।

এখনও আটকে আছেন? JSON থেকে Kotlin ডেটা ক্লাস কনভার্টার সম্পর্কে প্রশ্ন করুন আর যিনি জানেন তিনিই উত্তর দিতে পারেন। কোনো অ্যাকাউন্ট লাগবে না।

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

সব ডেভেলপার টুল
Base64 এনকোড ও ডিকোডটেক্সট ও ফাইল Base64-এ এবং আবার ফেরত, URL-নিরাপদ মোড ও ছবির প্রিভিউ সহUnix টাইমস্ট্যাম্প কনভার্টারUnix টাইমস্ট্যাম্প থেকে তারিখ আর তারিখ থেকে টাইমস্ট্যাম্প, যেকোনো টাইম জোনেJSON থেকে TypeScriptএকটি JSON নমুনা থেকে TypeScript ইন্টারফেস বা টাইপ তৈরি করুনCSV থেকে JSONটেবিল প্রিভিউসহ CSV থেকে JSON এবং JSON থেকে CSV-তে রূপান্তর করুনYAML থেকে JSONYAML থেকে JSON এবং JSON থেকে YAML-এ রূপান্তর করুন, অ্যাংকর সমাধানসহURL এনকোডার / ডিকোডারটেক্সট ও URL পার্সেন্ট-এনকোড বা ডিকোড করুন, আর লিংকের প্রতিটি অংশ দেখুনসংখ্যা পদ্ধতি রূপান্তরকারীবাইনারি, অক্টাল, ডেসিমাল, হেক্স এবং 36 পর্যন্ত যেকোনো ভিত্তি, যেকোনো আকারে নির্ভুল, টু'জ কমপ্লিমেন্টসহColor ConverterHEX, RGB, HSL, HWB, OKLCH and CMYK in both directions, with a contrast check
এই টুলটি কি কাজে লেগেছে?
Omnikit

ছোট ছোট কাজ, আপনার ব্রাউজারেই। বিনামূল্যে, দ্রুত ও ব্যক্তিগত। ফাইল কখনো আপলোড হয় না।

ফাইল

  • Compress Image
  • Image to PDF
  • Merge PDF
  • Compress PDF
  • PDF to Word
  • Word to PDF

ডেভ

  • JSON Formatter & Validator
  • Base64 Encode & Decode
  • JWT Decoder, Verifier & Encoder
  • Password Generator
  • UUID Generator
  • Unix Timestamp Converter

অর্থ

  • SIP Calculator
  • EMI Calculator
  • GST Calculator
  • FD Calculator
  • PPF Calculator
  • Lumpsum Calculator
EnglishالعربيةবাংলাDeutschEspañolFrançaisPolskiPortuguêsРусский
গাইডপ্রশ্নপরিচিতিআমরা কীভাবে যাচাই করিআইন লাইব্রেরি (বেটা)গোপনীয়তাশর্তাবলিপ্রকাশ্য বিবৃতিযোগাযোগMore: Exam practice (UGC NET Paper 1)আপনার ব্রাউজারে চলে। কিছুই আপলোড হয় না। © 2026 Omnikit (theomnikit.com)