ملف نصي

ملف نصي (يُكتب أحيانًا textfile ؛ ويُعرف أيضًا باسم الملف المسطح ) هو نوع من ملفات الحاسوب مُهيكل على شكل سلسلة من أسطر النص الإلكتروني . ويُخزن الملف النصي كبيانات داخل نظام ملفات الحاسوب .

في أنظمة التشغيل مثل CP/M ، حيث لا يحتفظ النظام بحجم الملف بالبايت، يُشار إلى نهاية ملف نصي بوضع حرف أو أكثر من الأحرف الخاصة، المعروفة بعلامة نهاية الملف (EOF)، كحشو بعد السطر الأخير. [ 1 ] أما في أنظمة التشغيل الحديثة مثل DOS و Microsoft Windows والأنظمة الشبيهة بـ Unix ، فلا تحتوي الملفات النصية على أي حرف خاص لعلامة نهاية الملف، لأن أنظمة الملفات في هذه الأنظمة تحتفظ بحجم الملف بالبايت. [ 2 ]

تُخزّن بعض أنظمة التشغيل، مثل Multics وأنظمة شبيهة بنظام Unix وCP/M و DOS ونظام Mac OS الكلاسيكي ونظام Windows، ملفات النصوص كسلسلة من البايتات، مع وجود فاصل نهاية السطر في نهاية كل سطر. [ 3 ] بينما تستخدم أنظمة تشغيل أخرى، مثل OpenVMS و OS/360 والإصدارات اللاحقة لها ، أنظمة ملفات موجهة نحو السجلات ، حيث تُخزّن ملفات النصوص كسلسلة إما من سجلات ثابتة الطول أو من سجلات متغيرة الطول مع قيمة طول السجل في رأس السجل.

يشير مصطلح "ملف نصي" إلى نوع من الحاويات، بينما يشير النص العادي إلى نوع من المحتوى.

على مستوى الوصف العام، يوجد نوعان من ملفات الحاسوب: ملفات نصية وملفات ثنائية . [ 4 ]

تخزين البيانات

رسم توضيحي مميز لملف نصي بتنسيق CSV

بسبب بساطتها، تُستخدم ملفات النصوص على نطاق واسع لتخزين المعلومات . فهي تتجنب بعض المشاكل التي تواجهها أنواع الملفات الأخرى، مثل ترتيب البايتات ، وحشو البايتات، أو اختلاف عدد البايتات في الكلمة البرمجية . علاوة على ذلك، عند حدوث تلف في البيانات في ملف نصي، غالبًا ما يكون من الأسهل استعادة البيانات المتبقية ومواصلة معالجتها. من عيوب ملفات النصوص أنها عادةً ما تتميز بانخفاض مستوى الإنتروبيا ، مما يعني أن المعلومات تشغل مساحة تخزين أكبر من اللازم.

قد لا يحتاج ملف نصي بسيط إلى أي بيانات وصفية إضافية (بخلاف معرفة مجموعة الأحرف الخاصة به ) لمساعدة القارئ على فهم محتواه. وقد لا يحتوي الملف النصي على أي بيانات على الإطلاق، وهو ما يُعرف بملف الصفر بايت .

التشفير

تُعدّ مجموعة أحرف ASCII أكثر مجموعات الأحرف توافقًا مع ملفات النصوص الإنجليزية، ويُفترض عمومًا أنها تنسيق الملف الافتراضي في كثير من الحالات. وهي تغطي اللغة الإنجليزية الأمريكية، ولكن بالنسبة لرمز الجنيه الإسترليني البريطاني ، ورمز اليورو ، أو الأحرف المستخدمة خارج اللغة الإنجليزية، يجب استخدام مجموعة أحرف أكثر شمولًا. في العديد من الأنظمة، يتم اختيار هذه المجموعة بناءً على إعدادات اللغة الافتراضية على الحاسوب الذي تُقرأ عليه. قبل UTF-8، كانت هذه المجموعات تُستخدم تقليديًا بترميز أحادي البايت (مثل ISO-8859-1 إلى ISO-8859-16 ) للغات الأوروبية، وترميز واسع النطاق للغات الآسيوية.

نظرًا لأن ترميزات الأحرف تمتلك بالضرورة مجموعة محدودة من الأحرف، وغالبًا ما تكون صغيرة جدًا، فإن العديد منها لا يُستخدم إلا لتمثيل النصوص في مجموعة فرعية محدودة من اللغات البشرية. يُعدّ يونيكود محاولةً لإنشاء معيار مشترك لتمثيل جميع اللغات المعروفة، ومعظم مجموعات الأحرف المعروفة هي مجموعات فرعية من مجموعة أحرف يونيكود الضخمة. على الرغم من وجود ترميزات أحرف متعددة متاحة ليونيكود، فإن الأكثر شيوعًا هو UTF-8 ، الذي يتميز بميزة التوافق مع الإصدارات السابقة من ASCII؛ أي أن كل ملف نصي ASCII هو أيضًا ملف نصي UTF-8 يحمل نفس المعنى. كما يتميز UTF-8 بسهولة اكتشافه تلقائيًا . وبالتالي، فإن الوضع التشغيلي الشائع للبرامج التي تدعم UTF-8، عند فتح ملفات ذات ترميز غير معروف، هو تجربة UTF-8 أولًا، ثم اللجوء إلى ترميز قديم يعتمد على اللغة المحلية عندما يكون من المؤكد أنه ليس UTF-8. [ 5 ]

التنسيقات

في معظم أنظمة التشغيل، يشير مصطلح " ملف نصي" إلى تنسيق ملف لا يسمح إلا بمحتوى نصي عادي مع تنسيق محدود للغاية (مثل عدم وجود خطوط غامقة أو مائلة ). يمكن عرض هذه الملفات وتعديلها عبر واجهات طرفية نصية أو باستخدام محررات نصوص بسيطة . عادةً ما تحتوي الملفات النصية على نوع MIMEtext/plain ، والذي يتضمن عادةً معلومات إضافية تشير إلى الترميز.

ملفات نصية لنظام التشغيل مايكروسوفت ويندوز

برنامج المفكرة في نظام التشغيل ويندوز 11 يفتح ملف نصي كمثال

يستخدم نظاما التشغيل DOS و Microsoft Windows تنسيقًا موحدًا لملفات النصوص، حيث يفصل بين كل سطر وآخر حرفان: حرف إرجاع السطر (CR) وحرف سطر جديد (LF). ومن الشائع ألا ينتهي السطر الأخير بعلامة CR-LF، ولا تقوم العديد من برامج تحرير النصوص (بما في ذلك المفكرة ) بإدراجها تلقائيًا في السطر الأخير.

في أنظمة تشغيل مايكروسوفت ويندوز، يُعتبر الملف ملفًا نصيًا إذا كان لاحقة اسمه ( امتداد الملف ) هي .txt. ...

تستخدم معظم ملفات النصوص الخاصة بنظام التشغيل Microsoft Windows ترميز ANSI أو OEM أو Unicode ( UTF-16 أو UTF-8).

ما يُطلق عليه مصطلح "ترميز ANSI" في نظام التشغيل مايكروسوفت ويندوز هو في الواقع ترميز ISO/IEC 8859 أحادي البايت (أي أن ANSI في قوائم برنامج المفكرة مايكروسوفت هو في الحقيقة "صفحة ترميز النظام"، وهو ترميز قديم غير متوافق مع يونيكود)، باستثناء اللغات مثل الصينية واليابانية والكورية التي تتطلب مجموعات أحرف ثنائية البايت. وقد استُخدم ترميز ANSI تقليديًا كلغات افتراضية للنظام في مايكروسوفت ويندوز، قبل الانتقال إلى يونيكود.

في المقابل، تم تعريف ترميزات OEM، والمعروفة أيضًا باسم صفحات ترميز DOS ، من قبل شركة IBM لاستخدامها في نظام عرض وضع النص الأصلي لأجهزة الكمبيوتر الشخصية من IBM . وهي تتضمن عادةً أحرفًا رسومية وخطوطًا شائعة في تطبيقات DOS.

تحتوي ملفات النصوص في نظام التشغيل مايكروسوفت ويندوز، المشفرة بنظام "يونيكود"، على نصوص بتنسيق تحويل يونيكود UTF-16. تبدأ هذه الملفات عادةً بعلامة ترتيب البايتات (BOM)، التي تُشير إلى ترتيب البايتات في محتوى الملف. على الرغم من أن ترميز UTF-8 لا يُعاني من مشاكل ترتيب البايتات، إلا أن العديد من برامج مايكروسوفت ويندوز (مثل برنامج المفكرة) تُضيف علامة BOM إلى بداية محتوى الملفات المشفرة بنظام UTF-8، [ 6 ] وذلك لتمييز ترميز UTF-8 عن ترميزات 8 بت الأخرى. [ 7 ]

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

في أنظمة التشغيل الشبيهة بنظام Unix ، يتم وصف تنسيق ملفات النصوص بدقة: يُعرّف POSIX ملف النص على أنه ملف يحتوي على أحرف منظمة في صفر أو أكثر من الأسطر، [ 8 ] حيث تكون الأسطر عبارة عن تسلسلات من صفر أو أكثر من الأحرف غير الجديدة بالإضافة إلى حرف سطر جديد نهائي، [ 9 ] عادةً LF.

بالإضافة إلى ذلك، يُعرّف نظام POSIX ما يلي:ملف قابل للطباعة كملف نصي تكون أحرفه قابلة للطباعة أو مسافة أو مسافة للخلف وفقًا للقواعد الإقليمية. يستثني هذا معظم أحرف التحكم، التي لا يمكن طباعتها. [ 10 ]

ملفات نصية لنظام أبل ماكنتوش

قبل ظهور نظام macOS ، كان نظام Mac OS الكلاسيكي يعتبر محتوى الملف (فرع البيانات) ملفًا نصيًا عندما يشير فرع الموارد إلى أن نوع الملف هو "نص". [ 11 ] تنتهي أسطر ملفات Mac OS النصية الكلاسيكية بأحرف CR. [ 12 ]

باعتباره نظامًا شبيهًا بنظام يونكس، يستخدم نظام macOS تنسيق يونكس لملفات النصوص. [ 12 ] مُعرِّف النوع الموحد (UTI) المستخدم لملفات النصوص في macOS هو "public.plain-text"؛ وهناك مُعرِّفات UTI إضافية أكثر تحديدًا، وهي: "public.utf8-plain-text" للنصوص المُشفَّرة بترميز UTF-8، و"public.utf16-external-plain-text" و"public.utf16-plain-text" للنصوص المُشفَّرة بترميز UTF-16، و"com.apple.traditional-mac-plain-text" لملفات النصوص الخاصة بنظام Mac OS الكلاسيكي. [ 11 ]

عرض

عند فتح الملف بواسطة محرر نصوص، يُعرض للمستخدم محتوى قابل للقراءة. غالبًا ما يتكون هذا المحتوى من النص العادي للملف الظاهر للمستخدم. وبحسب التطبيق، قد تُعرض رموز التحكم إما كتعليمات حرفية ينفذها المحرر، أو كأحرف هروب مرئية يمكن تحريرها كنص عادي. مع أن الملف النصي قد يحتوي على نص عادي، إلا أن أحرف التحكم الموجودة فيه (وخاصةً حرف نهاية الملف) قد تجعل النص العادي غير مرئي لبعض الطرق.

يمكن اعتبار استخدام لغات الترميز الخفيفة مثل TeX و Markdown و Wikitext امتدادًا لملفات النصوص العادية، إذ يظل النص المُرمَّز قابلاً للقراءة البشرية كليًا أو جزئيًا على الرغم من احتوائه على تعليقات قابلة للتفسير الآلي. وينطبق الأمر نفسه على الاستخدامات المبكرة لـ HTML ، مع أن HTML الخاص بالمواقع الإلكترونية الحديثة غير قابل للقراءة البشرية إلى حد كبير. كما يمكن اعتبار تنسيقات ملفات أخرى، مثل النصوص المُثرية و CSV، قابلة للتفسير البشري إلى حد ما.

انظر أيضاً

ملاحظات ومراجع

  1. جيانوني، سي.؛ دا كروز، إف.؛ دوبنيك، جيه آر (11 ديسمبر 1988). "دليل مستخدم MS-DOS Kermit: لعائلة IBM PC، والأجهزة المتوافقة، وأنظمة MS-DOS الأخرى، الإصدار 2.32" (ملف PDF) . جامعة يوتا . ص  6. تاريخ الاسترجاع: 18 يوليو 2026. يعرف نظام MS-DOS (على عكس CP/M) نهاية الملف بدقة لأنه يحتفظ بعدد البايتات في الدليل، لذا لا يُتوقع حدوث أي لبس في هذا الشأن. مع ذلك، تستمر بعض برامج MS-DOS في استخدام اصطلاح CP/M لإنهاء ملف نصي بحرف Control-Z، ولن تعمل بشكل صحيح ما لم يكن هذا البايت موجودًا. لذلك، يجب أن تكون على دراية بخيار SET EOF الخاص بالملفات الواردة والصادرة، والموصوف لاحقًا.
  2. "اختبار نهاية الملف" . مايكروسوفت ليرن . مايكروسوفت . تم الاطلاع عليه في 5 سبتمبر 2025 .
  3. فولك، مايكل (1992). "هياكل الملفات" .{{cite web}}: CS1 maint: url-status ( link )
  4. لويس، جون (2006). علوم الحاسوب المُستنيرة . جونز وبارتليت. ISBN 0-7637-4149-3.
  5. إريكسون، سيث (11 أغسطس 2021). "النص العادي وتشفير الأحرف: دليل تمهيدي لأمناء البيانات" . مجلة علم المكتبات الإلكترونية . 10 (3): 1-10 .
  6. "استخدام علامات ترتيب البايت" . تدويل تطبيقات ويندوز . مايكروسوفت . 7 يناير 2021. مؤرشف من الأصل في 21 فبراير 2023. تم الاسترجاع في 21 أبريل 2022 .
  7. فرايتاج، أسموس (18 ديسمبر 2015). "أسئلة شائعة - UTF-8، UTF-16، UTF-32 وBOM" . اتحاد يونيكود . تم الاطلاع عليه بتاريخ 30 مايو 2016. نعم، يمكن أن يحتوي ترميز UTF-8 على علامة BOM. ومع ذلك، لا يؤثر ذلك على ترتيب البايتات في سلسلة البايتات. فترتيب البايتات في UTF-8 ثابت دائمًا. تُستخدم علامة BOM الأولية فقط كعلامة مميزة - للإشارة إلى أن ملف نصي غير مُعلّم مُشفّر بـ UTF-8. تجدر الإشارة إلى أن بعض مُستقبلي البيانات المُشفّرة بـ UTF-8 لا يتوقعون وجود علامة BOM. عند استخدام UTF-8 بشكل شفاف في بيئات 8 بت، فإن استخدام علامة BOM سيتعارض مع أي بروتوكول أو تنسيق ملف يتوقع أحرف ASCII مُحددة في البداية، مثل استخدام "#!" في بداية نصوص يونكس البرمجية.
  8. "ملف نصي 3.403" . معيار IEEE 1003.1، إصدار 2017. جمعية IEEE للحاسبات . تم الاطلاع عليه بتاريخ 1 مارس 2019 .
  9. "3.206 Line" . معيار IEEE 1003.1، إصدار 2013. جمعية IEEE للحاسبات . تم الاطلاع عليه بتاريخ 15-12-2015 .
  10. "ملف قابل للطباعة 3.284" . معيار IEEE 1003.1، إصدار 2013. جمعية IEEE للحاسبات . تم الاطلاع عليه بتاريخ 15 ديسمبر 2015 .
  11. 1 2 "معرفات الأنواع الموحدة المعلنة من قبل النظام" . أدلة ونماذج برمجية . شركة آبل. 17-11-2009 . تم الاطلاع عليه بتاريخ 12-09-2016 .
  12. 1 2 "تصميم البرامج النصية للنشر عبر المنصات" . مكتبة مطوري ماك . شركة أبل . 10 مارس 2014. تم الاطلاع عليه بتاريخ 12 سبتمبر 2016 .