محول JSON إلى Properties
حوّل كائن JSON إلى صيغة .properties الخاصة بجافا، مع تسطيح الكائنات المتداخلة وإعادة إدراج التعليقات. يعمل بالكامل داخل المتصفح.
حوّل كائن JSON إلى ملف .properties بلغة Java يمكن لـjava.util.Properties وSpring Boot تحميله مباشرة. تتحول الكائنات المتداخلة إلى مفاتيح منقوطة مثل server.port=8080، وتُهرَّب الفواصل وفواصل الأسطر بشرطة مائلة عكسية حتى تبقى القيم سليمة بعد التحويل ذهابًا وإيابًا، وتُكتب خريطة $comments من جديد أسطرَ تعليق تبدأ بـ #. يتم التحويل في متصفحك، ولا يُرفع أي شيء.
حول محول JSON إلى Properties
ملف .properties يُقرأ سطرًا بسطر، ولهذا يهرّب المُسلسِل كل محرف قد يغيّر الطريقة التي تقسّم بها Java السطر: المسافة داخل المفتاح تصبح \ (شرطة مائلة عكسية تليها مسافة)، وعلامة = أو : داخل القيمة تصبح \= أو \:، وفاصل السطر يصبح \n. يُربط المفتاح بالقيمة بعلامة =، وتُسطَّح كائنات JSON المتداخلة إلى مفاتيح منقوطة بترتيبها الأصلي. أما النص غير ASCII مثل café فيُكتب بترميز UTF-8 بدلًا من تهريبات \uXXXX؛ إذ تقرأ Java 9 وما بعدها حِزم الموارد (resource bundles) بترميز UTF-8، لكن Properties.load(InputStream) يفك الترميز وفق ISO-8859-1، لذا حمّل الملف في شيفرتك عبر Reader يستخدم UTF-8.
قد تحتاج هذا أيضًا
كيفية تحويل JSON إلى .properties
- 1
جهّز كائن JSON
الصق كائنًا في لوحة الإدخال أو حمّل المثال { "server": { "port": 8080 } } من أيقونة القارورة؛ وتصبح مفاتيح المستوى الأعلى أسماءَ الخصائص.
- 2
اضبط فاصل المفاتيح
تتيح لك الخيارات المتقدمة إبقاء النقطة المعتادة في Java التي تظهر في أسماء مثل spring.datasource.url، أو اختيار فاصل آخر، أو إيقاف التسطيح لتبقى الكائنات المتداخلة نص JSON.
- 3
حوّل وراجع التهريب
بعد الضغط على «تحويل» تصبح كل قيمة طرفية سطر key=value، وتُسبَق المسافات في المفاتيح والفواصل داخل القيم وفواصل الأسطر بشرطة مائلة عكسية، فتقرأ java.util.Properties القيم نفسها عند التحميل.
- 4
ضعه في src/main/resources
انسخ المخرجات أو نزّلها ملفًا بامتداد .properties داخل src/main/resources، واستخدم أيقونة تبديل الاتجاه إن أردت تحليله مجددًا إلى JSON.
المراجع
- Java SE — java.util.Properties
التوثيق الرسمي لواجهة برمجة تطبيقات جافا الذي يحدّد صيغة ملف .properties التي تستهدفها مخرجات هذا المحول.
- RFC 8259 — تنسيق تبادل بيانات JSON
مواصفة IETF لتنسيق إدخال JSON الذي تحلّله هذه الأداة.
أدوات مطورين ذات صلة
Properties إلى JSON
حوّل ملف .properties الخاص بجافا إلى JSON، مع حفظ التعليقات الموجودة فوق كل مفتاح في كائن $comments.
JSON إلى Env
حوّل كائن JSON إلى صيغة .env، وهو التدفق المكافئ لملفات إعدادات متغيرات البيئة.
منسّق JSON
الصق JSON خام واحصل فورًا على عرض منسّق مع تمييز الصياغة والتحقق من الصحة قبل تحويله.
YAML إلى JSON
حوّل بين صيغتي الإعدادات YAML وJSON.
أسئلة شائعة حول JSON إلى Properties
- ما المحارف التي تُسبَق بشرطة مائلة عكسية؟
- المسافة داخل المفتاح، وعلامتا = و: داخل القيم، وفواصل الأسطر؛ فتُكتب مثلًا a\ b=x\=y وnote=line1\nline2، وهي بالضبط التهريبات التي تفكّها java.util.Properties عند تحميل الملف.
- هل تُكتب الحروف العربية وغيرها من المحارف غير ASCII بصيغة \uXXXX؟
- لا، تُكتب بترميز UTF-8 كما هي. تحمّل Java 9 وما بعدها حِزم موارد .properties بترميز UTF-8، لكن java.util.Properties#load(InputStream) يفترض ISO-8859-1، فإن كانت شيفرتك تستخدم هذه الواجهة فاقرأ الملف بـload(Reader) مع Reader بترميز UTF-8.
- هل يمكن إنشاء application.properties لـSpring Boot من JSON؟
- نعم. يعتمد Spring Boot أسماء خصائص منقوطة، لذا يصبح { "server": { "port": 8080 } } هو server.port=8080 مع الفاصل الافتراضي (النقطة).
- هل تُكتب المصفوفات بصيغة مفهرسة مثل hosts[0]=a؟
- لا. تُكتب المصفوفة قيمةً واحدة تحتوي نص JSON الخاص بها، مثل hosts=["a","b"]، ولا تُولَّد الصيغة المفهرسة التي يستخدمها Spring Boot (hosts[0]=a).
- هل تبقى 8080 في server.port=8080 رقمًا؟
- قيم .properties نصوص دائمًا، ولذلك تُكتب true وfalse والأرقام نصًا عاديًا. ويعيدها Properties إلى JSON أنواعَ JSON حقيقية عند تفعيل استنتاج الأنواع.
- أين تذهب الملاحظات الموجودة في $comments؟
- تُكتب أسطرَ # فوق المفتاح المقابل، وبذلك يعود كائن $comments الذي يُخرجه Properties إلى JSON إلى موضعه. اضبط «التعليقات» على «تجاهل» إذا أردت أسطر key=value فقط.
- هل تُرسل بياناتي إلى خادم أثناء التحويل؟
- لا. يجري التحليل والتنسيق كلاهما محليًا في متصفحك، دون أي طلبات شبكة تتضمن بياناتك.