Node.js İle Dosya Yönetimi ve Düzenleme İşlemleri

Node.js İle Dosya Yönetimi ve Düzenleme İşlemleri

Nodejs kullanarak dosya yönetimi ve düzenleme işlemleri yapmak oldukça kolaydır Dosya okuma, yazma ve silme işlemleri temel dosya işlemleridir Dosya içeriğini değiştirme, kopyalama ve taşıma işlemleri de dosya düzenleme işlemleri arasında yer alır Dosya içeriğinde arama yapmak da önemlidir Bu işlemler için fs modülü kullanılır Dosya içeriğini değiştirmek için writeFile, belirli kelimeleri değiştirmek için replace, belirli satırları kopyalamak için createReadStream ve createWriteStream fonksiyonları kullanılabilir Dosya kopyalama ve taşıma işlemleri ise copyFileSync ve renameSync fonksiyonları ile yapılabilir

Node.js İle Dosya Yönetimi ve Düzenleme İşlemleri

Bugün, hem dosya yönetimi hem de düzenleme işlemleri için oldukça popüler bir araç olan Node.js hakkında konuşacağız. Node.js, JavaScript programlama dilinin sunucu tarafında çalışabilmesini sağlayan bir çerçeve olarak tasarlanmıştır. Node.js kullanarak dosya işlemleri yapmak, programlama dünyasında oldukça yaygın hale gelmiştir.

Bu yazıda, Node.js kullanarak dosya yönetimi ve düzenleme işlemlerinizi nasıl daha etkili bir şekilde yapabileceğinizi öğreneceksiniz. Dosyalarınızı okumak, yazmak, silmek, değiştirmek, kopyalamak ve taşımak için birçok yöntem var. Ayrıca, dosya oluşturma, yeniden adlandırma ve silme gibi dosya yönetim işlemleri de yöntemlerle ele alınacak.


Dosya İşlemleri Temelleri

Node.js ile dosya yönetimi ve düzenleme işlemleri yapmak oldukça kolay ve pratik bir hale gelir. Dosya işlemlerinin temelleri ise dosya okuma, yazma ve silme işlemleridir. Dosya okuma işlemi, bir dosyadaki verileri okuma işlemini ifade eder. Dosya yazma işlemi ise, dosyaya veri yazma işlemidir. Dosya silme işlemi ise adından da anlaşılacağı gibi, bir dosyanın silinmesi işlemidir. Node.js ile dosya işlemleri yaparken, bu temelleri iyi kavramak gerekir.

Dosya işlemleri yaparken Node.js’in native modülü olan ‘fs’ modülünü kullanmak gerekir. Bu modül, dosya işlemleri yaparken kullanılan metotları içerir. Dosya okuma işlemi ‘fs.readFile()’ metodu ile yapılırken, dosya yazma işlemi ‘fs.writeFile()’ metodu ile, dosya silme işlemi ise ‘fs.unlink()’ metodu ile gerçekleştirilir.

  • Dosya okuma işlemi için fs.readFile() metodu kullanılır ve bu metot dosyanın içindeki verileri alarak bir fonksiyona döndürür.
  • Dosya yazma işlemi için ise fs.writeFile() metodu kullanılır ve veriler belirtilen dosya yoluna kaydedilir.
  • Dosya silme işlemi için fs.unlink() metodu kullanılır ve belirtilen dosya yolu silinir.

Dosya işlemleri temellerini iyi anladıktan sonra, dosya düzenleme işlemlerine geçmek mümkündür. Dosya içeriğini değiştirme, kopyalama ve taşıma işlemleri, dosya işlemlerinde oldukça kullanılan işlemlerdir. Dosya içeriğini değiştirme işlemi, dosyanın içindeki verileri değiştirme işlemini ifade eder. Dosya içeriğinde arama yapmanın yöntemleri, eşleşen kelimeleri değiştirme gibi işlemler öğrenilir. Dosya içeriğindeki belirli satırları kopyalama işlemi, dosyalar arasında veri alışverişi yapabilmek adına oldukça önemlidir. Dosya kopyalama ve taşıma işlemleri ise dosyaların farklı konumlara kopyalanması ya da taşınması işlemleridir.


Dosya Düzenleme İşlemleri

Dosya düzenleme işlemleri, Node.js kullanarak oldukça kolay ve hızlı bir şekilde yapılabilir. Bu işlemler arasında dosya içeriğini değiştirme, kopyalama ve taşıma yer almaktadır.

Bir dosyanın içeriğini değiştirmek için öncelikle dosyanın adını ve yolunu belirlemeliyiz. Daha sonra Node.js'in fs modülünde yer alan writeFile() fonksiyonunu kullanarak dosyanın içeriğini değiştirebiliriz.

Parametre Açıklama
file Değiştirilecek dosyanın adı ve yolu
data Yeni dosya içeriği
callback Dosya değiştirme işlemi tamamlandığında çağrılacak fonksiyon

Örnek kullanım:

fs.writeFile('example.txt', 'Yeni dosya içeriği', function(err) {  if (err) throw err;  console.log('Dosya içeriği değiştirildi.');});

Bir dosyanın içeriğinde belirli kelimeleri değiştirmek için replace() fonksiyonunu kullanabiliriz. Bu sayede belirli bir kelimeyi veya tüm belirtilen kelimeleri değiştirebiliriz.

Örnek kullanım:

fs.readFile('example.txt', 'utf8', function (err,data) {  if (err) throw err;  var result = data.replace(/eski kelime/g, 'yeni kelime');  fs.writeFile('example.txt', result, 'utf8', function (err) {     if (err) throw err;     console.log('Dosya içeriği değiştirildi.');  });});

Bir dosyanın içeriğindeki belirli satırları kopyalamak için createReadStream() ve createWriteStream() fonksiyonlarını kullanabiliriz.

Örnek kullanım:

var stream = fs.createReadStream('example.txt', {start: 10, end: 20});var writeStream = fs.createWriteStream('newFile.txt');stream.pipe(writeStream);

Dosya kopyalama ve taşıma işlemleri yapmak için Node.js'in fs modülünde yer alan copyFileSync() ve renameSync() fonksiyonlarını kullanabiliriz.

Örnek kullanım:

fs.copyFileSync('example.txt', 'example_copy.txt');fs.renameSync('example.txt', 'newExample.txt');

Bu şekilde Node.js kullanarak dosya düzenleme işlemlerini kolaylıkla yapabilirsiniz.


Dosya İçeriğini Değiştirme

Dosya içeriği, programlama sürecinde en sık kullanılan dosya işlemlerinden biridir. Dosya içeriğini değiştirme işlemi, dosyadaki hataların giderilmesinde, içeriğinde yapılan değişikliklerin kaydedilmesinde ve dosya içeriği düzenleme işlemlerinde oldukça önemlidir.

Dosya içeriği değiştirme işlemi, dosya okuma ve yazma işlemlerini kullanarak gerçekleştirilebilir. Dosya okuma işlemi ile dosya içeriği okunur, değişiklikler yapıldıktan sonra ise dosya yazma işlemi kullanılarak yeni içerik dosyaya yazılır.

Ayrıca, dosya içeriğinde arama yapmak da oldukça önemlidir. Dosyada aranacak kelime veya karakter dizisi, programlama diline bağlı olarak belirlenir. Bu işlem için, dosya satırlarının tek tek okunması ve satırların içeriğinde arama yapılması gerekmektedir.

Dosya içerisinde aranan kelimelerin değiştirilmesi, programlama sürecinde oldukça sık kullanılan bir işlemdir. Bu işlem, dosya içeriğini okuyarak belirli bir kelimeyi bulmak ve bu kelimeyi farklı bir kelime ile değiştirmekten oluşur.

Dosya içeriğindeki eşleşen kelimeleri değiştirmek için, öncelikle dosya okunmalı ve içeriği değiştirilecek olan kelime belirlenmelidir. Daha sonra, bu kelime aranır ve eşleşen her kelime, yeni kelime ile değiştirilir.

Dosya içeriğindeki belirli satırların kopyalanması, programlama sürecinde oldukça önemlidir. Bu işlem, belirli bir sayıda satırın kopyalanmasını ve farklı bir dosyaya yapıştırılmasını içerir.

Satır kopyalama işlemi için, öncelikle dosya okunmalı ve belirli satırların seçimi yapılarak kopyalanması istenen satırlar belirlenmelidir. Daha sonra, bu satırlar yeni bir dosyaya kopyalanır ve yazma işlemi ile bu dosyaya kaydedilir.


Eşleşen Kelimeleri Değiştirme

Bu bölümde, dosya içeriğinde yer alan belirli kelimelerin yerlerini değiştirmenin yöntemleri ele alınacaktır. Eşleşen kelimelerin değiştirilmesi, dosya içeriği üzerinde yapılan değişiklikler arasında oldukça sık kullanılan bir yöntemdir. Node.js, bu işlemi kolay ve hızlı bir şekilde yapabilmeniz için size birçok farklı metot sunar.

İlk olarak, dosya içeriğindeki belirli kelime veya kelime öbeklerini değiştirmek için `replace()` işlevini kullanabilirsiniz. Bu işlev, bir dize içindeki tüm belirtilen kelimeleri veya öbekleri, yeni bir kelime veya öbekle değiştirir. Aşağıdaki örnek, dosya içeriğindeki tüm 'merhaba' kelimelerinin 'selam' kelimesiyle değiştirilmesini gösterir:

```javascriptconst fs = require('fs');

fs.readFile('dosya.txt', 'utf8', function(err, data) { if (err) throw err; data = data.replace(/merhaba/g, 'selam'); fs.writeFile('dosya.txt', data, 'utf8', function(err) { if (err) throw err; console.log('Dosya içeriği değiştirildi.'); });});```Bu örnekte, ilk olarak dosya `readFile()` işlevi ile okunur, ardından `replace()` işlevi kullanılarak tüm 'merhaba' kelimeleri 'selam' kelimesiyle değiştirilir. Son olarak, `writeFile()` işlevi kullanılarak değiştirilmiş içerik dosyaya yazılır.

Eşleşen kelimeleri değiştirmenin başka bir yöntemi ise `transform()` yöntemidir. Bu yöntem, dosya içeriğindeki her satırı okur ve sadece belirli kelimeleri değiştirir. Aşağıdaki örnek, dosya içeriğindeki her satırdaki 'merhaba' kelimelerinin 'selam' kelimesiyle değiştirilmesini gösterir:

```javascriptconst fs = require('fs');const readline = require('readline');

const rl = readline.createInterface({ input: fs.createReadStream('dosya.txt'), crlfDelay: Infinity});

const stream = fs.createWriteStream('yeni_dosya.txt');

rl.on('line', (line) => { const yeniLine = line.replace(/merhaba/g, 'selam'); stream.write(yeniLine + '\n');});

rl.on('close', () => { console.log('İşlem tamamlandı.'); stream.end();});```

Bu örnekte, `readline` modülüyle bir okuma arayüzü oluşturulur ve okuma arayüzü, `fs.createReadStream()` işlevi ile dosyadan okunur. Ardından, her satır `replace()` yöntemi ile değiştirilir ve `fs.createWriteStream()` işlevi kullanılarak yeni bir dosyaya yazılır.

Eşleşen kelimeleri değiştirmek için başka yöntemler de mevcuttur, ancak burada bahsedilen yöntemler en sık kullanılanlardır. Dosya düzenleme işlemlerinin oldukça önemli olduğu günümüzde, Node.js bu işlemleri kolayca yapmanıza olanak tanıyan güçlü bir araçtır.


Dosya İçeriğindeki Satırları Kopyalama

Dosya içeriğinde belirli satırları kopyalamak, programlama dillerinde oldukça sık karşılaşılan bir işlemdir. Node.js ile bu işlem oldukça kolay ve hızlı bir şekilde gerçekleştirilebilir.

Bunun için öncelikle, kopyalamak istediğiniz belirttiğiniz satırların başlangıç ve bitiş indekslerini belirlemeniz gerekiyor. Bu indeksler kullanılarak dosya içindeki belirtilen satırlar kolayca kopyalanabilir.

  • readline.createInterface(options): Bu metot, readline modülünü kullanarak bir arayüz oluşturmanızı sağlar. Bu arayüz üzerinden dosya içinde okuma ve yazma işlemleri yapabilirsiniz.
  • interface.on(event, listener): Bu metot, belirtilen olayın gerçekleştiğinde çalıştırılacak bir dinleyici fonksiyonu ekler.
  • interface.question(query, callback): Bu metot, readline arayüzü üzerinden kullanıcıya bir soru sorar. Kullanıcının cevabı, geri çağrılacak bir işlev aracılığıyla alınır.
  • createReadStream(path, [options]): Bu metot, okuma modunda kullanılmak üzere bir okuma akışı oluşturur.
  • createWriteStream(path, [options]): Bu metot, yazma modunda kullanılmak üzere bir yazma akışı oluşturur.
Metot Açıklama
readline.createInterface(options) rl = readline.createInterface({input: fs.createReadStream('dosya.txt')});
interface.on(event, listener) rl.on('line', function(line) { ... });
interface.question(query, callback) rl.question('Silmek istediğiniz satırın numarasını girin: ', function(answer) { ... });
createReadStream(path, [options]) var rd = fs.createReadStream('dosya.txt');
createWriteStream(path, [options]) var wt = fs.createWriteStream('yenidosya.txt');

Bu yöntemler kullanarak dosyadan belirli satırları okuyabilir ve sonra bunları yeni bir dosyaya kopyalayabilirsiniz. Ayrıca, readline modülünü de kullanarak dosyayı satır satır okuyabilirsiniz.

Özetle, Node.js ile dosya içeriğinde belirli satırları kopyalamak oldukça basit ve hızlı bir işlemdir. Birkaç küçük adımdan sonra istediğiniz satırları kopyalayabilir ve kullanımınıza uygun hale getirebilirsiniz.


Dosya Kopyalama ve Taşıma

Dosya kopyalama işlemi, var olan bir dosyanın aynısından yeni bir kopya oluşturmayı sağlar. Bu işlemi gerçekleştirmek için, Node.js'de bulunan fs.copyFile() yöntemi kullanılır. Bu yöntem, kaynak dosya adı, hedef dosya adı ve bir fonksiyon parametresi içerir. Fonksiyon parametresinde hata durumları ele alınır.

Dosya taşıma işlemi, bir dosyanın varlığını başka bir klasöre taşımak demektir. Bu işlemi Node.js'de gerçekleştirmek için fs.rename() yöntemi kullanılır. Bu yöntem, kaynak dosya adı, hedef dosya adı ve bir fonksiyon parametresi içerir. Dosyanın kopyasını oluşturmak ve orijinal dosyayı silmek yerine, dosyayı taşımak daha verimli bir yöntemdir.

Dosya Kopyalama ve Taşıma Parametreleri Açıklama
fs.copyFile() Bir kaynak dosya, hedef dosya ve bir fonksiyon parametresi alır.
fs.rename() Bir kaynak dosya, hedef dosya adı ve bir fonksiyon parametresi alır.

Dosya kopyalama ve taşıma işlemleri, herhangi bir web uygulamasında önemli bir rol oynar. Bu işlemleri hızlı ve verimli bir şekilde gerçekleştirmek, dosya yönetimi işlemlerinin hızlı ve hatasız bir şekilde yapılmasına yardımcı olur. Node.js' in bu iki yöntemi sayesinde dosya kopyalama ve taşıma işlemleri daha kolay ve hızlı bir şekilde gerçekleştirilir.


Dosya Yönetim İşlemleri

Dosya yönetimi işlemleri, bir web uygulaması veya site oluştururken en sık karşılaşılan işlemlerden biridir. Bu işlemler, kullanıcıların veri giriş ve çıkışları yaparak site veya uygulamanın doğru bir şekilde çalışmasını sağlar. Bu bölümde, Node.js kullanarak dosya oluşturma, yeniden adlandırma ve silme işlemlerinin nasıl yapılacağına dair yöntemler ele alınacaktır.

Dosya oluşturma işlemi, özellikle web uygulamaları veya sitelerinde dosya yükleneceği zaman sıkça kullanılır. Node.js ile dosya oluşturma işlemi oldukça basittir. İlgili dizine gidilerek fs.writeFile fonksiyonu kullanılarak dosya oluşturulabilir. Dosya oluşturma işlemi için temel bir örnek aşağıdaki gibidir:

Metot Açıklama
fs.writeFile() Bir dosyaya veri yazar. Eğer dosya yok ise, dosyayı oluşturur.

Dosya yeniden adlandırma işlemi, mevcut bir dosyanın isminin değiştirilmesi işlemidir. Bu işlem için, Node.js'de fs.rename() fonksiyonu kullanılır. Bu fonksiyon ile dosyanın eski adı ve yeni adı şeklinde parametreler alınır. Aşağıdaki örnek kod bloğunda, "eski_ad.txt" adlı dosyanın "yeni_ad.txt" olacak şekilde adlandırılması işlemi gerçekleştirilir:

  fs.rename('eski_ad.txt', 'yeni_ad.txt', (err) => {     if (err) throw err;     console.log('Dosya yeniden adlandırıldı.');   });

Dosya silme işlemi, mevcut bir dosyanın silinmesi işlemidir. Bu işlem için, fs.unlink() fonksiyonu kullanılır. Bu fonksiyon ile dosyanın adı şeklinde bir parametre alınır. Aşağıdaki örnek kod bloğunda, "silenecek_dosya.txt" adlı dosyanın silinmesi işlemi gerçekleştirilir:

  fs.unlink('silenecek_dosya.txt', (err) => {     if (err) throw err;     console.log('Dosya silindi.');   });

Bu işlemler, dosya yönetimi yaparken sıklıkla kullanılır ve Node.js ile oldukça basit bir şekilde gerçekleştirilebilir. Dosya yönetimi işlemlerini doğru bir şekilde kullanarak, web uygulamaları ve sitelerinin verimliliği artırılabilir ve işlemler daha hızlı bir şekilde tamamlanabilir.


Dosya Oluşturma İşlemleri

Node.js kullanarak dosya oluşturma işlemleri oldukça basittir. Bir dosya oluşturmak için, fs modülünü kullanmanız gerekir. Bu modül, disk dosya sistemindeki dosyalarla etkileşim kurmanıza olanak tanır. Dosya oluşturma işlemi yaparken, öncelikle fs.writeFile() fonksiyonunu kullanmanız gerekecektir.

Bu fonksiyon içine iki parametre alır. İlk parametre olarak dosya ismi verilmelidir. İkinci parametre olarak ise dosya içeriği belirtilmelidir. Dosya içeriği belirtmek için, bir dizge kullanılabilir. Ayrıca, bu fonksiyon ikinci bir callback fonksiyonu alır. Bu callback fonksiyonu, işlem tamamlanınca çalışacaktır.

Dosya Oluşturma Örneği
                  const fs = require('fs');          fs.writeFile('ornek.txt', 'Bu bir örnek dosyadır.', (err) => {              if (err) throw err;              console.log('Dosya başarıyla oluşturuldu!');          });              

Bu örnekte, 'ornek.txt' adında bir dosya oluşturduk ve içine 'Bu bir örnek dosyadır.' metnini yazdık. Dosya oluşturma işlemi tamamlandığında, bir callback fonksiyonu yardımıyla bir mesaj yazdırdık.

Dosya oluşturma işlemi, aynı zamanda mevcut bir dosyayı da değiştirerek gerçekleştirilebilir. Bu işlem, fs.appendFile() fonksiyonu ile yapılabilir. Bu fonksiyon, dosyanın mevcut içeriğine yeni bir metin ekler. Eğer dosya yoksa, yeni bir dosya oluşturur.

Dosya Değiştirme Örneği
                  const fs = require('fs');          fs.appendFile('ornek.txt', ' Bu yeni bir metindir.', (err) => {              if (err) throw err;              console.log('Metin dosyaya başarıyla eklendi!');          });              

Bu örnekte, 'ornek.txt' dosyasında yer alan metnin sonuna 'Bu yeni bir metindir.' satırı ekledik. Dosya mevcut değilse, bu fonksiyon yeni bir dosya oluşturacaktır.

Node.js kullanarak dosya oluşturma işlemi oldukça basit ve hızlıdır. İstediğiniz zaman, kodunuzu düzenleyerek dosyaları istediğiniz gibi oluşturabilirsiniz.


Dosya Yeniden Adlandırma İşlemleri

Dosya yeniden adlandırma işlemi, bir dosyanın mevcut adını yeni bir adla değiştirmek anlamına gelir. Node.js, dosya adı değiştirme işlemini basit ve hızlı hale getiren birkaç yöntem sunar. Bunlar arasında `fs.rename()` ve `fs.promises.rename()` fonksiyonları yer alır.

`fs.rename()` fonksiyonu, eski dosya adını ve yeni dosya adını parametre olarak alır ve yeniden adlandırma işlemini gerçekleştirir. Aynı anda birkaç dosyanın adını da değiştirebilirsiniz. Örneğin:

```const fs = require('fs');

fs.rename('eski-ad.txt', 'yeni-ad.txt', function(err) { if (err) throw err; console.log('Dosya adı başarıyla değiştirildi.');});```

`fs.promises.rename()` fonksiyonu da aynı şekilde kullanılır, ancak geri çağırım fonksiyonu yerine bir Promise nesnesi döndürür. Örneğin:

```const fs = require('fs').promises;

fs.rename('eski-ad.txt', 'yeni-ad.txt') .then(() => console.log('Dosya adı başarıyla değiştirildi.')) .catch((err) => console.error(err));```

Ayrıca, bir dosya adının sadece belirli bir kısmını değiştirmek istediğiniz durumlarda `path.parse()` ve `path.format()` fonksiyonları da kullanılabilir. Örneğin:

```const path = require('path');const fs = require('fs').promises;

const eskiAd = 'eski-veri.txt';const dosyaBilgisi = path.parse(eskiAd);const yeniAd = path.format({ ...dosyaBilgisi, name: 'yeni-' + dosyaBilgisi.name,});

fs.rename(eskiAd, yeniAd) .then(() => console.log('Dosya adı başarıyla değiştirildi.')) .catch((err) => console.error(err));```

Bu yöntemler sayesinde Node.js kullanarak dosya yeniden adlandırma işlemini kolayca gerçekleştirebilirsiniz.


Dosya Silme İşlemleri

Dosya silme işlemleri, dosyaların yanlışlıkla veya artık kullanılmayan gereksiz dosyaların silinmesi için oldukça önemlidir. Bunun için Node.js, fs modülü içerisinde yer alan unlink() yöntemi kullanılmaktadır. unlink() yöntemi, dosya silme işlemini gerçekleştirmektedir.

unlink() yöntemi sadece dosya silmek için kullanılabilmektedir. Eğer klasör silmek istenirse, rmdir() yönteminin kullanılması gerekmektedir. Dosya silme işlemi, dosya yolu ve dosya adı belirtilerek yapılmaktadır. Silme işlemi gerçekleştikten sonra, dosya artık bulunmamaktadır ve bellekte de tutulmamaktadır. Dosya silme işlemi için örnek bir kod satırı şu şekildedir:

fs.unlink('dosyaAdi.txt', (err) => { if (err) throw err; console.log('Dosya silindi!');});

Bu kod satırında, dosyaAdi.txt adlı dosya silinmektedir. unlink() yöntemi, parametre olarak dosya adını ve bir callback fonksiyonunu almaktadır. Callback fonksiyonu, dosya silme işlemi tamamlanınca çalışmaktadır. Eğer hata varsa throw err satırıyla hatanın fırlatılması sağlanmakta ve hata mesajı konsola yazdırılmaktadır.

Dosya silme işlemi esnasında dikkat edilmesi gereken en önemli nokta, yanlışlıkla önemli bir dosyanın silinmesi durumunun önlenmesidir. Dosya silme işlemini gerçekleştirmeden önce, dosya adı ve dosya yolu gibi bilgilerin doğru olarak girilmesi gerekmektedir. Ayrıca, silinecek dosya birçok yerde kullanılan bir dosya ise, dosyanın silinmesi sonrasında etkilenen diğer kodlar da kontrol edilmelidir.