Sizin gibi okuyucular MUO'yu desteklemeye yardımcı oluyor. Sitemizdeki bağlantıları kullanarak bir satın alma işlemi gerçekleştirdiğinizde, bir ortaklık komisyonu kazanabiliriz.
Dosyalarla çalışmak, bir programın gerçekleştirdiği en yaygın görevlerden biridir, bu nedenle Node'un yardımcı kitaplığıyla zamandan ve emekten tasarruf edin.
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ü, dosya ve dizinlerle çalışmak için birçok yararlı işlev içerir.
Dosyalar, genellikle disk veya bellek olarak bilinen sabit bir ortamda depolanan kalıcı nesneler veya veri yığınları olarak adlandırılır. 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?
Bir dosya sistemi, bir işletim sisteminin diğer işlemlerle birlikte dosyaları nasıl tanımlayabileceğini, düzenleyebileceğini, depolayabileceğini ve 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, bir dosya sisteminin diğer birçokları arasında sıklıkla etkileşimde bulunan en yaygın parçalarıdır.
Bazı dosya sistemleri örnekleri arasında Yeni Teknoloji Dosya Sistemi (NTFS), UNIX Dosya Sistemi (UFS) ve Hiyerarşik Dosya Sistemi (HFS) bulunur.
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. bu fs modüle kolayca erişilebilir ve dosya işlemleri için gidilecek kitaplıktır. dosyalardan okuma veya Node.js'deki dosyalara veri yazma.
ile çok yaygın olarak kullanılır. yol Ve işletim sistemi dosyalar üzerinde çeşitli işlemler gerçekleştirmek için modüller. kullanmak için fs programlarınızda modül varsa, aşağıdaki kodda gösterildiği gibi kaynak kodunuza aktarabilirsiniz.
// OrtakJS
sabit fs = gerekmek('fs')
// ES6
içe aktarmak fs itibaren 'fs'
Node.js yol Modülü Nedir?
Node.js'yi kullanabilirsiniz yol dosya yollarını işlemek için modül. Dosya ve dizin yollarıyla kolayca etkileşime geçmek için yardımcı programlar içerir. Kullanmak fs Ve yol modüllerin bir görevi tamamlamak için birlikte kullanılması standart bir uygulamadır. Bunun nedeni, çoğunluğun fs modül işlevleri, çalışacak dosyaları veya dizinleri hedefleyecek yollara bağlıdır.
içe aktarabilirsiniz yol modülünü aşağıdaki söz dizimi ile kodunuza ekleyin:
// OrtakJS
sabit yol = gerekmek('yol')
// ES6
içe aktarmak yol itibaren 'yol'
Node.js'de Dosya Sistemine Erişmek İçin Ortak İşlevler
İşte en sık kullanılan Node.js fs Ve yol modül işlevleri ve bunların dosya ve dizinlerle etkileşimde bulunmak için nasıl kullanılacağı.
Yollarla Çalışmak
-
yol.çöz: Bu, parametre olarak iletilen yol yönergeleri listesinden bir yolu çözme işlevidir. Örneğin:
path.resolve('ev', 'projeler', 'web');
// İadeler/home/projects/web path.resolve('ev/projeler/web', '../mobil');
// İadeler/home/projects/mobile -
yol.normalleştirme: bu normalleştirmek işlev, belirli bir giriş yolundan doğru ve normalleştirilmiş yolu döndürür. Örneğin:
path.normalize('ev/projeler/web/../mobil/./kod');
// ana sayfa/projeler/mobil/kod döndürür -
yol.katılma: Bu işlev, birkaç parçadan bir yol oluşturur. Örneğin:
path.join('ev', 'projeler', '../', 'filmler');
// eve/filmlere döner -
yol.taban adı: bu temel isim işlev, son yol parçasını döndürür. İki şekilde kullanabilirsiniz:
path.basename('ev/projeler/web/index.js');
// index.js'yi döndürürpath.basename('home/projects/web/index.js', '.js');
// uzantıyı kaldırır ve 'dizin' döndürür -
yol.diradı: Bu işlev, belirli bir yolun son dizinine giden yolu döndürür. Örnek:
path.dirname('ev/projeler/web/index.js');
// eve/projelere/web'e döner -
yol.uzantı adı: Bu işlevle, bir dosyanın uzantısını belirli bir yoldan alabilirsiniz.
path.extname('ev/projeler/web/index.js');
// '.js' döndürür
Dosyaları Açma ve Kapatma
-
fs.open: Bu, Node.js'de eşzamanlı olarak bir dosya açma veya oluşturma işlevidir. senkron formu fs.açık dır-dir fs.openSync. fs.a açdosya yolu, bayraklar, açık mod ve bir geri arama işlevi olan dört bağımsız değişkeni kabul eder. Bayraklar Ve açıkmod varsayılan bir değere sahiptir ve onlar hakkında daha fazla bilgiyi şuradan öğrenebilirsiniz: Node.js fs.open belgeler.
sabit filePath = yol.join (__dirname, '/videos/yeniVideo.mp4');
// __dirname geçerli çalışma dizininin yolunu döndürür.
// dosyayolu =/videos/newVideo.mp4 fs.open (filePath, (hata, fileDescriptor) => {
// hataları işle
konsol.log (dosyaTanımlayıcı); // dosya tanımlayıcıyı temsil eden bir tamsayı yazdırır
}) -
fs.kapat: Artık ihtiyaç duyulmayan açık dosyaları her zaman kapatmak iyi bir uygulamadır. Node.js'nin sahip olduğu fs.kapat Bunun için işlev:
fs.open (filePath, (hata, fileDescriptor) => {
// 'dosya/dizin mevcut değil' gibi hataları işleyin
konsol.log (dosyaTanımlayıcı);// dosyayı kapat
fs.close (fileDescriptor, (hata) => {
// hataları işle
konsol.log('Dosya başarıyla kapatıldı');
});
})
Oluşturma ve Silme
-
fs.mkdir: Bu tıpkı şu şekilde çalışır mkdir yeni bir dizin oluşturan terminal komutu. Parametre olarak bir yol, mod (isteğe bağlı) ve geri arama işlevi alır. Bunu şu şekilde kullanabilirsiniz:
sabit dirPath = path.join (__dirname, 'yeniDirectory');
fs.mkdir (dirPath, (hata) => {
// hataları işle
konsol.log('Yeni dizin başarıyla oluşturuldu');
}); -
fs.bağlantıyı kaldır: Bu işlev, argüman olarak iletilen yoldaki dosyayı kaldırır veya siler. Aşağıdaki kod örneğini göz önünde bulundurun:
sabit filePath = path.join (_dirname, 'eskiDosya.js');
fs.unlink (filePath, (hata) => {
// hataları işle
konsol.log('Dosya başarıyla silindi');
}); -
fs.rmdir: Bu yöntem, belirli bir yoldaki dizini siler. Kullanım açısından unlink yöntemine çok benzer:
sabit dirPath = path.resolve('ev', 'projeler', 'web');
fs.rmdir (dirPath, (hata) => {
// hataları işle
konsol.log('Dizin başarıyla silindi');
})
-
fs.var: bu var yöntem, belirli bir yoldaki dosyanın var olup olmadığını kontrol eder. Uygulama şu şekildedir:
izin vermek filePath = path.join (__dirname, 'index.html');
fs.exists (filePath, (var) => {
konsol.log (var) // doğru ya da yanlış
}) -
fs.stat: Bu, bir dosyanın özelliklerini döndüren senkronize bir işlevdir. bir döndürür fs. İstatistikler dosyanın özelliklerine erişmek için bazı yöntemler sunan nesne. İşte bir örnek:
fs.stat('index.js', (hata, istatistikler) => {
konsol.log (istatistikler); // dosyanın alt düzey özelliklerini yazdırır
istatistik.isFile(); // doğru döndürür
istatistik.isDirectory(); // yanlış döndürür
})
kullanmalısın yol sizi platformlar arasında beklenmeyen davranışlardan kurtardıkları için dosya yollarıyla çalışırken kullanılan yöntemler. bu Node.js fs Ve Node.js yolu belgeler kapsamlı bir yöntem listesini açıklar.
Node.js'de Dosya Sistemini Değiştirme
genişliği fs modülü, herhangi bir işletim sistemindeki dosyalara erişmeyi ve dosyalarla etkileşimi çok kolaylaştırır. ile birlikte kullandığınızda yol modül, daha fazla işlevselliğe açıksınız ve dosya sistemini istediğiniz gibi değiştirebilirsiniz.
Node.js'nin en büyük avantajı taşınabilirliğidir. Uygulamalarınızı herhangi bir platformda geliştirebilir ve temel uyumluluk sorunları hakkında endişelenmeden herhangi bir yerde konuşlandırabilirsiniz.