দেখছেন: বাংলা ইংরেজিতে দেখুন

JSON প্রিটিফায়ার, মিনিফায়ার এবং ভ্যালিডেটর

ফরম্যাট, মিনিফাই, বা ভ্যালিডেট করতে নিচে JSON পেস্ট করুন।

  1. উপরের বাক্সে আপনার JSON পেস্ট বা টাইপ করুন।
  2. ইনডেন্ট সহ ফরম্যাট করতে প্রিটিফাই ক্লিক করুন।
  3. হোয়াইটস্পেস সরাতে মিনিফাই, বা সিনট্যাক্স ত্রুটি দেখতে ভ্যালিডেট ক্লিক করুন।
  4. কাজ হয়ে গেলে ফলাফল কপি বা ডাউনলোড করুন।
এটি কী করে?

প্রিটিফাই আপনার JSON-কে সামঞ্জস্যপূর্ণ ইনডেন্ট (২ স্পেস, ৪ স্পেস বা ট্যাব — আপনার পছন্দ) দিয়ে পুনরায় ফরম্যাট করে। মিনিফাই প্রতিটি অপ্রয়োজনীয় অক্ষর সরিয়ে দেয় যাতে আউটপুট যতটা সম্ভব কম্প্যাক্ট হয়, যা URL-এ JSON এমবেড করা, একটি ডাটাবেস কলামে সংরক্ষণ করা, বা API পেলোড সাইজ কমানোর জন্য উপযোগী। ভ্যালিডেট পরীক্ষা করে ইনপুট JSON স্পেসিফিকেশন মানে কিনা এবং যে কোনো সিনট্যাক্স ত্রুটির সঠিক লাইন ও কলাম দেখায়।

উদাহরণ

মিনিফাইড ইনপুট:

{"name":"Ada","skills":["math","logic"],"active":true}

২-স্পেস ইনডেন্টে প্রিটিফাইয়ের পর:

{
  "name": "Ada",
  "skills": ["math", "logic"],
  "active": true
}

সাধারণ JSON ত্রুটি এবং সেগুলি কীভাবে ঠিক করবেন

এগুলি "অবৈধ JSON" ত্রুটির বেশিরভাগের জন্য দায়ী। ভ্যালিডেটর সমস্যাযুক্ত লাইন ও কলাম নির্দেশ করে, যা কী খুঁজতে হবে জানার পর নির্দিষ্ট কারণ সাধারণত স্পষ্ট হয়ে ওঠে।

  • ট্রেইলিং কমা। {"a": 1, "b": 2,} অবৈধ। JSON কোনো অবজেক্ট বা অ্যারের শেষ আইটেমের পরে কমা অনুমোদন করে না।
  • একক উদ্ধৃতি চিহ্ন। {'a': 1} অবৈধ। JSON স্ট্রিং ও কী অবশ্যই দ্বিগুণ উদ্ধৃতি ব্যবহার করবে।
  • উদ্ধৃতিহীন কী। {a: 1} অবৈধ — JavaScript অবজেক্ট লিটারাল এটি অনুমোদন করে, কিন্তু JSON করে না।
  • অনুপস্থিত কমা। {"a": 1 "b": 2} অবৈধ। প্রতিটি সিবলিং-এর একটি কমা সেপারেটর প্রয়োজন।
  • কমেন্ট। // এইভাবে বা /* এইভাবে */ কঠোর JSON (RFC 8259)-এ অনুমোদিত নয়। এগুলি সরান বা JSONC পার্সার ব্যবহার করুন।
  • স্মার্ট উদ্ধৃতি। ওয়ার্ড প্রসেসর থেকে কপি-পেস্ট করলে কখনো " কার্লি উদ্ধৃতি হয়ে যায়, যা JSON প্রত্যাখ্যান করে। উদ্ধৃতি আবার টাইপ করুন বা প্লেন-টেক্সট এডিটরের মাধ্যমে পেস্ট করুন।
প্রায়শই জিজ্ঞাসিত প্রশ্ন

আমার JSON ঠিক দেখালেও অবৈধ দেখাচ্ছে কেন?

বেশিরভাগ "অবৈধ" ত্রুটি চারটি কারণের একটি থেকে আসে: অ্যারে বা অবজেক্টের শেষ আইটেমের পরে ট্রেইলিং কমা, দ্বিগুণের বদলে একক উদ্ধৃতি, উদ্ধৃতিহীন অবজেক্ট কী, বা আইটেমের মধ্যে অনুপস্থিত কমা। ভ্যালিডেটর সমস্যার সঠিক লাইন ও কলাম নির্দেশ করে যাতে আপনি সরাসরি সেখানে যেতে পারেন।

প্রিটিফাই ও মিনিফাইয়ের মধ্যে পার্থক্য কী?

প্রিটিফাই JSON-কে ইনডেন্ট ও লাইন ব্রেক দিয়ে পুনরায় ফরম্যাট করে যাতে সহজে পড়া যায়। মিনিফাই সমস্ত হোয়াইটস্পেস সরিয়ে দেয় যাতে আউটপুট যতটা ছোট হয় ততটা সম্ভব, যা URL-এ JSON এমবেড বা নেটওয়ার্ক পেলোড সাইজ কমাতে কাজে লাগে। উভয়েই অর্থগতভাবে অভিন্ন JSON তৈরি করে — শুধু হোয়াইটস্পেস ভিন্ন।

এই টুল কি খুব বড় JSON ফাইল হ্যান্ডল করতে পারে?

হ্যাঁ, আপনার ব্রাউজারের সীমা পর্যন্ত। আধুনিক ব্রাউজার সমস্যা ছাড়াই দশক মেগাবাইট পর্যন্ত JSON ফাইল পার্স করতে পারে। বাধা সাধারণত টেক্সট-এরিয়ায় আউটপুট রেন্ডার করা, পার্সিং নয়। 50 MB-এর বেশি ফাইলের জন্য প্রিটিফাই ট্যাব কিছু সময় স্থবির করতে পারে।

এটি কি কমেন্টসহ JSON (JSONC বা JSON5) সমর্থন করে?

না। এই টুল কঠোর JSON স্পেসিফিকেশন (RFC 8259) ব্যবহার করে, যা কমেন্ট, ট্রেইলিং কমা বা একক-উদ্ধৃত স্ট্রিং অনুমোদন করে না। JSONC বা JSON5 ইনপুট থাকলে আগে অস্ট্যান্ডার্ড সিনট্যাক্স সরান বা সেই ডায়ালেক্টের জন্য নিবেদিত পার্সার ব্যবহার করুন।

প্রিটিফাই করলে কি কীগুলির ক্রম পরিবর্তন হয়?

না। আউটপুট ইনপুটের একই কী ক্রম বজায় রাখে। JavaScript অবজেক্ট iteration স্ট্রিং কীয়ের জন্য সুশৃঙ্খল, এবং এই টুল ফরম্যাটিংয়ের সময় কিছুই সাজায় বা পুনর্বিন্যাস করে না।

আমি এখানে যে JSON পেস্ট করি তা কি সংরক্ষণ করেন?

না। বাক্সে পেস্ট করা কোনো JSON আমরা সংরক্ষণ করি না। আপনি যা প্রিটিফাই, মিনিফাই বা ভ্যালিডেট করেন তা পৃষ্ঠা বন্ধ বা রিফ্রেশ করা মাত্রই বাতিল হয় — কোনো লগ নেই, আপনার পেলোডের কোনো রেকর্ড আমাদের পাশে নেই। অতিরিক্ত আস্থার জন্য ব্রাউজারের ডেভেলপার টুলে দেখতে পারেন।