Dosyalarla çalışmak, bir programın gerçekleştirdiği en yaygın görevlerden biridir, bu nedenle Node’un yardımcı kitaplığı ile zamandan ve emekten tasarruf edin.

Node.js'de Dosya Sistemini Değiştirmek İçin Temel Bir Kılavuz

Node.js’nin yerleşik özelliklerinden biri, işletim sisteminin dosya sisteminin fs modülünü kullanarak değiştirilmesidir. Bu Node.js modülü, dosyalar ve dizinlerle çalışmak için birçok kullanışlı işlev içerir.

Dosyalara basitçe kalıcı nesneler veya tipik olarak disk veya bellek olarak bilinen sabit bir ortamda depolanan veri parçaları denir. Dosyalar, metin dosyalarından görüntü dosyalarına, ses dosyalarına ve çok daha fazlasına kadar çeşitli türlerde olabilir.

Peki, dosya sistemi nedir ve Node.js’de bir işletim sisteminin dosya sistemiyle nasıl kolayca etkileşim kurabilirsiniz?

Dosya Sistemi Nedir?

Dosya sistemi, bir işletim sisteminin diğer işlemlerle birlikte dosyaları nasıl tanımlayabileceğini, düzenleyebileceğini, depolayabileceğini ve dosyalara nasıl erişebileceğini tanımlar.

Bir işletim sisteminin dosya sistemi, dosyaları dizinler veya klasörler olarak bilinen koleksiyonlar halinde gruplama işini de yapar. Sıradan dosyalar ve dizinler, çoğu zaman diğerleri arasında etkileşime giren bir dosya sisteminin en yaygın parçalarıdır.

Dosya sistemlerine örnek olarak Yeni Teknoloji Dosya Sistemi (NTFS), UNIX Dosya Sistemi (UFS) ve Hiyerarşik Dosya Sistemi (HFS) verilebilir.

Node.js fs Modülü Nedir?

Node.js fs modülü, Node.js tarafından Node.js’yi destekleyen herhangi bir işletim sisteminin dosya sistemiyle çalışmak için sağlanan yerleşik bir kitaplıktır. fs modülüne kolayca erişilebilir ve dosyalardan okuma veya Node.js’deki dosyalara veri yazma gibi dosya işlemleri için başvurulacak kitaplıktır .

Dosyalar üzerinde çeşitli işlemleri gerçekleştirmek için yol ve işletim sistemi modülleriyle çok yaygın olarak kullanılır . fs modülünü programlarınızda kullanmak için aşağıdaki kodda gösterildiği gibi kaynak kodunuza import edebilirsiniz.

// CommonJS

const fs = require(‘fs’)

// ES6

import fs from ‘fs’

Node.js yol Modülü Nedir?

Dosya yollarını değiştirmek için Node.js yol modülünü kullanabilirsiniz. Dosya ve dizin yollarıyla kolayca etkileşim kurmak için yardımcı programları içerir. Bir görevi tamamlamak için fs ve path modüllerini birlikte kullanmak standart bir uygulamadır. Bunun nedeni, fs modül işlevlerinin çoğunun, işlev görecek dosyalara veya dizinlere giden yollara bağlı olmasıdır.

Yol modülünü aşağıdaki sözdizimi ile kodunuza aktarabilirsiniz :

// CommonJS

const path = require(‘path’)

// ES6

import path from ‘path’

Node.js’de Dosya Sistemine Erişmek için Ortak İşlevler

Burada en sık kullanılan Node.js fs ve yol modülü işlevleri ve bunların dosya ve dizinlerle etkileşim kurmak için nasıl kullanılacağı anlatılmaktadır.

Yollarla Çalışmak

path.resolve: Bu, parametre olarak iletilen yol talimatları listesinden bir yolu çözme işlevidir. Örneğin:

path.resolve(‘home’, ‘projects’, ‘web’);

// returns <path_to_current_directory>/home/projects/web

path.resolve(‘home/projects/web’, ‘../mobile’);

// returns <path_to_current_directory>/home/projects/mobile

path.normalize: Normalize işlevi, belirli bir giriş yolundan doğru ve normalleştirilmiş yolu döndürür. Örneğin:

path.normalize(‘home/projects/web/../mobile/./code’);

// returns home/projects/mobile/code

path.join: Bu işlev, birkaç parçadan bir yol oluşturur. Örneğin:

path.join(‘home’, ‘projects’, ‘../’, ‘movies’);

// returns home/movies

path.basename: basename işlevi , son yol parçasını döndürür. İki şekilde kullanabilirsiniz:

path.basename(‘home/projects/web/index.js’);

// returns index.js

path.basename(‘home/projects/web/index.js’, ‘.js’);

// removes the extension and returns ‘index’

path.dirname: Bu işlev, verilen yolun son dizinine giden yolu döndürür. Örnek:

path.dirname(‘home/projects/web/index.js’);

// returns home/projects/web

path.extname: Bu fonksiyon ile verilen bir yoldan bir dosyanın uzantısını alabilirsiniz.

path.extname(‘home/projects/web/index.js’);

// returns ‘.js’

Dosyaları Açma ve Kapatma

fs.open: Bu, Node.js’de eşzamanlı olarak bir dosya açma veya oluşturma işlevidir. fs.open’ın eşzamanlı biçimi fs.openSync’tir . fs.open a dosya yolu, bayraklar, açık mod ve bir geri çağırma işlevi olmak üzere dört bağımsız değişkeni kabul eder. Bayraklar ve açık modun varsayılan bir değeri vardır ve bunlar hakkında Node.js fs.open belgelerinden daha fazla bilgi edinebilirsiniz.

const filePath = path.join(__dirname, ‘/videos/newVideo.mp4’);

// __dirname returns the path to the current working directory.

// filePath = <path_to_current_directory>/videos/newVideo.mp4

fs.open(filePath, (error, fileDescriptor) => {

    // handle errors

    console.log(fileDescriptor); // prints an integer representing the file descriptor

})

fs.close: Açık dosyaların artık gerekmediğinde her zaman kapatılması iyi bir uygulamadır. Node.js bunun için fs.close işlevine sahiptir:

fs.open(filePath, (error, fileDescriptor) => {

    // handle errors, such as ‘file/directory does not exist’

    console.log(fileDescriptor);

    // close the file

    fs.close(fileDescriptor, (error) => {

        // handle errors

        console.log(‘File closed successfully’);

    });

})

Oluşturma ve Silme

fs.mkdir: Bu, yeni bir dizin oluşturan mkdir terminal komutu gibi çalışır . Parametre olarak bir yol, mod (isteğe bağlı) ve geri arama işlevini alır. Bunu şu şekilde kullanabilirsiniz:

const dirPath = path.join(__dirname, ‘newDirectory’);

fs.mkdir(dirPath, (error) => {

    // handle errors

    console.log(‘New directory created successfully’);

});

fs.unlink: Bu işlev, argüman olarak iletilen yoldaki dosyayı kaldırır veya siler. Aşağıdaki kod örneğini düşünün:

const filePath = path.join(_dirname, ‘oldFile.js’);

fs.unlink(filePath, (error) => {

    // handle errors

    console.log(‘File has been deleted successfully’);

});

fs.rmdir: Bu yöntem, belirli bir yoldaki dizini siler. Bağlantıyı kaldırma yöntemine kullanımda çok benzer:

const dirPath = path.resolve(‘home’, ‘projects’, ‘web’);

fs.rmdir(dirPath, (error) => {

    // handle errors

    console.log(‘Directory successfully deleted’);

})

Dosya Meta Verileri

fs.exists: Mevcut yöntem, belirli bir yoldaki dosyanın var olup olmadığını kontrol eder . Uygulama aşağıdaki gibidir:

let filePath = path.join(__dirname, ‘index.html’);

fs.exists(filePath, (exists) => {

    console.log(exists) // true or false

})

fs.stat: Bu, bir dosyanın özelliklerini döndüren eşzamanlı bir işlevdir. Dosyanın özelliklerine erişmek için bazı yöntemleri ortaya çıkaran bir fs.Stats nesnesi döndürür . İşte bir örnek:

fs.stat(‘index.js’, (error, stats) => {

    console.log(stats); // prints low level properties of the file

    stats.isFile(); // returns true

    stats.isDirectory(); // returns false

})

Sizi platformlar arasında beklenmeyen davranışlardan kurtardıkları için dosya yollarıyla çalışırken yol yöntemlerini kullanmalısınız. Node.js fs ve Node.js yol belgeleri , kapsamlı bir yöntem listesini açıklar.

Node.js’de Dosya Sistemini Değiştirme

fs modülünün genişliği, herhangi bir işletim sistemindeki dosyalara erişmeyi ve dosyalarla etkileşimi çok kolaylaştırır. Yol modülü ile birlikte kullandığınızda daha fazla işlevselliğe açık olursunuz ve dosya sistemini istediğiniz gibi değiştirebilirsiniz.

Node.js’nin önemli bir avantajı taşınabilirliğidir. Uygulamalarınızı herhangi bir platformda geliştirebilir ve temel uyumluluk sorunları hakkında endişelenmeden herhangi bir yere dağıtabilirsiniz.

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir