কনফিগ কনভার্টার
একটি কনফিগ ফরম্যাট পেস্ট করুন, টাইপ করার সময়ই বাকি দুটি পান।
কীভাবে ব্যবহার করবেন
- আপনার কনফিগ পেস্ট করুন — YAML, JSON বা Java .properties। ফরম্যাট শনাক্ত হয় এবং টাইপ করার সময়ই বাকি দুটি নিচে দেখা যায়; কোনো বাটন চাপার দরকার নেই।
- যদি অনুমান ভুল হয়, নিজেরা উৎস ফরম্যাট নির্বাচন করুন। 2 বা 4 স্পেস ইন্ডেন্ট বেছে নিন, এবং Spring-স্টাইল কী ফ্ল্যাট রাখতে "ডটেড কী প্রসারিত করুন" অফ করুন।
- প্রতিটি ফলাফল আলাদাভাবে কপি বা ডাউনলোড করুন — ফাইলের নাম config.yaml, config.json এবং config.properties।
উদাহরণ
ইনপুট (YAML)
server: port: 8080 name: order-service debug: true
JSON এবং Properties
{
"server": {
"port": 8080,
"name": "order-service"
},
"debug": true
}
Properties
----------
server.port = 8080
server.name = order-service
debug = trueশুধু ডিফল্ট নিয়ম: উৎস YAML হিসেবে শনাক্ত হয়, তাই 8080 সংখ্যা থাকে এবং true বুলিয়ান থাকে। Properties-এ টাইপ নেই, তাই একই মান JSON-এ স্ট্রিং 8080 ও true হয় — উৎস .properties হলে শুরু থেকেই স্ট্রিং থাকে।
নিয়ম, সীমাবদ্ধতা ও পরিচিত সমস্যা
- শুধু তিনটি ফরম্যাট: YAML, JSON এবং Java .properties। TOML নেই, INI [section] হেডার নেই, XML বা CSV নেই।
- YAML একটি কনফিগ সাবসেট হিসেবে সমর্থিত: ব্লক ম্যাপিং, সিকোয়েন্স, ফ্লো {…} / […], কোটেড স্কেলার এবং | / > ব্লক স্কেলার। অ্যাংকর (&), অ্যালিয়াস (*), !ট্যাগ, << মার্জ কী এবং ? জটিল কী অনুমান না করে error হিসেবে রিপোর্ট হয়।
- শুধু প্রথম YAML নথি রূপান্তর হয়; পরের --- উপেক্ষা ও রিপোর্ট হয়।
- কমেন্ট বহন করে নেওয়া হয় না: তিনটি ফরম্যাটে ভিন্ন জায়গায় বসে, তাই ভুল জায়গায় রাখা কমেন্ট না রাখার চেয়ে খারাপ।
- Properties-এ টাইপ নেই। প্রতিটি মান স্ট্রিং, তাই port = 8080 JSON-এ "8080" হয় — 8080 নয়। সংখ্যা, বুলিয়ান ও null শুধু টিকে থাকে যখন উৎস YAML বা JSON হয়।
- নন-ASCII টেক্সট যেমন আছে তেমন লেখে (UTF-8), \uXXXX হিসেবে এস্ক্যাপ করে না। Java'র Properties.store() ISO-8859-1 লেখে, তাই Java প্রজেক্টে পেস্ট করলে ফাইল UTF-8-তে সেভ করুন।
- সেফ রেঞ্জের বাইরের পূর্ণসংখ্যা (যেমন 12345678901234567890) আপনার টাইপ করা সঠিক অঙ্কসহ স্ট্রিং হিসেবে রাখা হয়, সংখ্যায় রাউন্ড করে নয়।
- কী ক্রম আপনার ইনপুট অনুসরণ করে; সর্টিং অপশন নেই।
- টপ-লেভেল অ্যারে বা সাধারণ মান properties-এ লেখা যায় না — ওই একটি প্যানেল রিপোর্ট করে, অন্যটি রূপান্তর চালিয়ে যায়।
- ফাইল আপলোড নেই, URL প্যারামিটার নেই, হিস্টরি নেই। সব আপনার ব্রাউজারে চলে: কিছুই আপলোড বা সেভ হয় না।
- লাইন ব্রেক থাকা স্ট্রিং YAML-এ | ব্লক স্কেলার নয় "a\nb" হিসেবে লেখে।
- সীমা: 1,000,000 অক্ষর এবং 64 লেভেল নেস্টিং — কোনোটির বেশি হলে ছাঁটানো ফলাফলের বদলে error পান। 200,000 অক্ষরের উপরে টাইপ করা থামানোর প্রায় 0.6 সেকেন্ড পরে ফলাফল আপডেট হয়; আউটপুট LF ব্যবহার করে এবং ট্রেইলিং নিউলাইন নেই।
সম্পর্কিত টুল
কনফিগ সঠিক ফরম্যাটে আসার পরে সাধারণত যা প্রয়োজন হয়।