5- كورس Node.js بالعربي – Node.js File System

نظام الملفات في Node.js

نظام الملفات في Node.js

نظام الملفات في Node.js هو أحد المكونات الأساسية التي تتيح للمطورين التفاعل مع الملفات والمجلدات على النظام المحلي. بفضل وحدة fs المدمجة، يمكن للمطورين قراءة، كتابة، تعديل وحذف الملفات بطريقة متزامنة أو غير متزامنة. هذا يجعل من Node.js أداة [شركة برمجة مصرية] قوية لإنشاء تطبيقات تتفاعل مع نظام الملفات بكفاءة عالية.

القراءة من الملفات في Node.js

تعد عملية القراءة من الملفات من العمليات الأساسية التي يوفرها نظام الملفات في Node.js. يمكن قراءة الملفات باستخدام الطريقة [شركة برمجة مصرية] المتزامنة fs.readFileSync أو باستخدام الطريقة غير المتزامنة fs.readFile. المثال التالي يوضح كيفية قراءة ملف نصي باستخدام الطريقة غير المتزامنة:


    const fs = require('fs');

    fs.readFile('example.txt', 'utf8', (err, data) => {
        if (err) {
            console.error('حدث خطأ أثناء قراءة الملف:', err);
            return;
        }
        console.log('محتوى الملف:', data);
    });
    

الكتابة إلى الملفات في Node.js

بالإضافة إلى القراءة، يتيح نظام الملفات في Node.js إمكانية الكتابة إلى الملفات. يمكن استخدام الطريقة المتزامنة fs.writeFileSync أو الطريقة غير المتزامنة fs.writeFile. المثال التالي يوضح كيفية كتابة نص إلى ملف باستخدام الطريقة غير المتزامنة:


    fs.writeFile('output.txt', 'هذا هو النص الذي سيتم كتابته إلى الملف', (err) => {
        if (err) {
            console.error('حدث خطأ أثناء كتابة الملف:', err);
            return;
        }
        console.log('تم كتابة الملف بنجاح');
    });
    

التعامل مع المجلدات في Node.js

إلى جانب التعامل مع الملفات، يمكن لنظام الملفات في Node.js التعامل مع المجلدات أيضًا. يمكن إنشاء مجلدات أو حذفها باستخدام الأوامر المدمجة في وحدة fs. على سبيل المثال، لإنشاء مجلد جديد يمكن استخدام الطريقة fs.mkdir:


    fs.mkdir('newFolder', (err) => {
        if (err) {
            console.error('حدث خطأ أثناء إنشاء المجلد:', err);
            return;
        }
        console.log('تم إنشاء المجلد بنجاح');
    });
    

باستخدام نظام الملفات في Node.js، يمكن للمطورين بناء تطبيقات متكاملة تتفاعل مع النظام المحلي بطرق متعددة وفعالة، مما يفتح المجال أمام إمكانيات لا حصر لها في تطوير التطبيقات الحديثة.