إعدادات INI (.ini)

معيار قياسي

ملف إعدادات Windows الأولية (INI) هو تنسيق ملفات الإعدادات التقليدي الذي اشتهر مع Microsoft Windows. وينظّم إعدادات التطبيقات في أقسام مسماة بين معقوفين، تضم أزواجاً من مفتاح وقيمة.

تحويل INI إلى JSON

محول مجاني داخل المتصفح للتحويل من INI إلى JSON. قم بتحويل الملفات فوراً على جهازك.

فحص البيانات الوصفية

تتعرف أنظمة التشغيل ومحللات الملفات على ملفات INI من خلال فحص تسلسل البايت الثنائي البادئ:

اختر الملفات أو أسقطها هنا

خاص - لا تغادر الملفات جهازك أبدًا

أو الصق Ctrl+V
ضمان الخصوصية وعدم الإرسال عبر الشبكة: صفر بايت يتم رفعه إلى خوادم خارجية. تمت كل عمليات المعالجة محلياً في صندوق الحماية (Sandbox) الخاص بمتصفحك.

توقيع رأس الملف على مستوى البايت (Magic Bytes)

تتعرف أنظمة التشغيل ومحللات الملفات على ملفات INI من خلال فحص تسلسل البايت الثنائي البادئ:

التوقيع الست عشري (الإزاحة 0):

5B ... 5D

تمثيل ASCII: [...]

التوحيد القياسي: معيار صناعي شائع بحكم الاستخدام

المواصفات الفنية

هيكلية الحاويةملف إعدادات نصي عادي، منظّم في ترويسات أقسام بين معقوفين تضم أزواج مفتاح = قيمة وتعليقات تبدأ بـ ; أو #
الضغطملف نصي غير مضغوط
ترتيب البايتات (Endianness)تدفق نصي بترميز UTF-8 أو ANSI
مساحات الألوانلا ينطبق (ملف إعدادات)
القنوات والبنيةخصائص إعدادات على هيئة مفتاح وقيمة، مصنفة ضمن أقسام مسماة
الحد الأقصى للأبعادكان الحد 64 كيلوبايت في إصدارات Windows ذات 16 بت؛ ولا حد له في التطبيقات الحديثة.
الشفافيةلا يوجد
البث والتحميل التدرجيمحلل تدفقي يقرأ الملف سطراً بعد سطر

مصفوفة المقارنة التقنية: INI مقابل المنافسين

السمة التقنيةINI (الحالي)JSONYAMLTOML
تعقيد بناء الجملةالأبسط الممكن (قسم + مفتاح=قيمة)أقواس واقتباسات صارمةمسافات بيضاء يتحدد معناها بمستوى المسافة البادئةجداول حديثة ذات أنواع محددة
دعم التعليقاتمدعوم أصلًا (تعليقات ; و #)لا تدعم المواصفات التعليقاتمدعوم أصلًا (تعليقات #)مدعوم أصلًا (تعليقات #)
الهياكل المتداخلةأقسام من مستوى واحد فقطكائنات/مصفوفات متداخلة بلا حدودأشجار متداخلة بلا حدودمصفوفات جداول منظّمة
أنواع البياناتسلاسل نصية تلقائيًا (يحلل التطبيق الأنواع)أرقام صريحة، قيم منطقية، مصفوفاتأنواع صريحة ومثبتاتتواريخ صريحة، أرقام، مصفوفات

أنماط التلف الشائعة ودليل الاسترداد بالنظام الست عشري

يتجاهل التطبيق الإعدادات أو يفشل في البدء.

السبب الجذري: غياب قوس الإغلاق في ترويسة القسم (مثل [Settings بدلاً من [Settings])، أو وجود علامة يساوي غير مهربة في القيمة.

الاسترداد: تحقّق من صياغة ملف INI وأصلحها باستخدام منسّق الإعدادات في File2File.app.

تحليل الأمان ومتجهات الهجوم على المحلّل

ينبغي لمحللات INI الحماية من هجمات حقن الأقسام وتلويث النماذج الأولية عند تحويل البيانات إلى كائنات.

ناقلات الهجوم المعروفة

  • حقن INI حيث يؤدي إدراج سطر جديد في مدخلات المستخدم إلى إنشاء أقسام تهيئة غير مصرح بها.
  • تلويث النماذج الأولية في محللات JavaScript INI التي تُعيّن إلى '__proto__'.
  • حرمان من الخدمة من خلال التوسع المتكرر العميق لأسماء الأقسام.

أفضل الممارسات الدفاعية: نقِّ مدخلات المستخدم لمنع أحرف السطر الجديد، واحمِ المحلل من تلويث النماذج الأولية.

الأصول التاريخية والمحطات الرئيسية

2000تتضمن المكتبة القياسية في Python وحدة configparser للتعامل مع ملفات INI.
1995أضاف Windows 95 سجل Windows ليحل محل ملفات INI المركزية للنظام (SYSTEM.INI وWIN.INI).
1985قدّم Microsoft Windows 1.0 الملف WIN.INI بوصفه قاعدة البيانات الأساسية لإعدادات نظام التشغيل.

المزايا الرئيسية والإيجابيات

  • صياغة واضحة وبسيطة للغاية، يسهل على المستخدمين غير المتخصصين قراءة الإعدادات وتعديلها.
  • تتوفر واجهات تحليل مدمجة في معظم لغات البرمجة (مثل configparser في Python وparse_ini_file في PHP وواجهات C#).
  • مساحات الأسماء للأقسام تمنع تضارب الإعدادات عبر ميزات التطبيق المختلفة.

القيود الفنية والسلبيات

  • لا يوجد معيار دولي رسمي؛ إذ تختلف رموز التعليقات (; أو #) وقواعد الهروب بين المحللات.
  • بنيته مسطحة، فلا يدعم المصفوفات المتداخلة بعمق أو الكائنات المركبة من دون فواصل مخصصة.
  • تُقرأ جميع القيم كسلاسل نصية، لذا يتعين على التطبيقات تحليل الأعداد الصحيحة والقيم المنطقية والعشرية يدوياً.

معلومات تقنية طريفة

  • في Windows 3.1، خُزنت جميع إعدادات نظام التشغيل في ملفين فقط: WIN.INI وSYSTEM.INI.
  • يستخدم Git صيغة INI في ملف إعدادات المستودع الرئيسي ‎.git/config‎.
  • تُكتب ملفات اختصارات سطح المكتب في Linux (ملفات ‎.desktop‎ وفق XDG Desktop Entry) بصياغة INI القياسية.

الأسئلة التقنية المتكررة

ما هو الغرض من استخدام ملفات INI؟

تُستخدم ملفات INI في برامج سطح المكتب والألعاب وأدوات المطورين (مثل إعدادات Git و PHP.ini) لتخزين تفضيلات المستخدم وإعدادات التكوين بتنسيق سهل القراءة.

كيف يمكنني تعديل ملف INI؟

يمكنك فتح ملفات INI وتعديلها باستخدام أي محرر نصوص أساسي مثل Notepad أو TextEdit أو VS Code، أو مباشرة عبر الإنترنت باستخدام موقع File2File.app.

هل يمكنني تحويل ملف INI إلى JSON أو YAML؟

نعم. يتيح لك موقع File2File.app تحويل ملفات INI إلى تنسيقات JSON أو YAML أو TOML النظيفة بشكل فوري داخل متصفحك.