crazy_coder
Moderatör
- Katılım
- 20 Şub 2026
- Mesajlar
- 204
- Tepkime puanı
- 0
- Puanları
- 16
1. FS Modülünü Dahil Etmek
FS modülü Node.js ile birlikte kurulu gelir, bu yüzden npm ile yüklemenize gerek yoktur. Sadece projenize dahil etmeniz yeterlidir. Modern projelerde hem asenkron (hızlı ve bloklamayan) hem de senkron yöntemler mevcuttur.
JavaScript:
const fs = require('fs'); // Standart yöntem
const fsPromises = require('fs').promises; // Modern asenkron (async/await) yöntem
2. Dosya Okuma İşlemleri
Bir dosyayı okurken en önemli kural, Node.js'e verinin formatını (genellikle utf-8) söylemektir. Aksi takdirde size insan dilinde bir metin yerine bir "Buffer" (sayı dizisi) döndürecektir.
Asenkron Okuma (Önerilen):
JavaScript:
fs.readFile('notlar.txt', 'utf8', (err, data) => {
if (err) {
console.error("Dosya okunurken hata oluştu:", err);
return;
}
console.log("Dosya İçeriği:", data);
});
3. Dosya Yazma ve Güncelleme
Dosya yazma işlemlerinde iki ana metod vardır:
[]fs.writeFile(): Dosyayı sıfırdan oluşturur. Eğer dosya zaten varsa, içindekileri siler ve üzerine yazar.
[]fs.appendFile(): Dosyanın içindekileri korur ve yeni veriyi en sona ekler.
JavaScript:
// Yeni dosya oluşturma veya üzerine yazma
fs.writeFile('merhaba.txt', 'Node.js öğrenmek harika!', (err) => {
if (err) throw err;
console.log('Dosya başarıyla oluşturuldu.');
});
// Mevcut dosyaya ekleme yapma
fs.appendFile('merhaba.txt', '\nBu satır sonradan eklendi.', (err) => {
if (err) throw err;
console.log('Veri eklendi.');
});
4. Senkron vs. Asenkron İşlemler
Node.js'te neredeyse her FS metodunun bir de Sync eki almış hali vardır (Örn: readFileSync). Ancak dikkatli olun! Senkron metodlar dosya okunana kadar tüm uygulamayı durdurur (bloklar).
| Özellik | Asenkron (readFile) | Senkron (readFileSync) |
|---|---|---|
| Hız | Çok yüksek (Arka planda yapar) | Daha yavaş (Programı bekletir) |
| Kullanım Amacı | Web sunucuları, API'ler | Basit kurulum scriptleri |
| Hata Yönetimi | Callback içindeki err parametresi | try-catch blokları |
5. Dosya Silme ve Yeniden Adlandırma
JavaScript:
// Dosya adını değiştirme
fs.rename('eski_isim.txt', 'yeni_isim.txt', (err) => {
if (err) throw err;
console.log('Dosya adı güncellendi.');
});
// Dosyayı silme
fs.unlink('silinecek_dosya.txt', (err) => {
if (err) throw err;
console.log('Dosya kalıcı olarak silindi.');
});
Sonuç
FS modülü, Node.js'i gerçek bir "programlama platformu" yapan temeldir. Veritabanı kullanmadığınız küçük projelerde verileri JSON dosyalarında saklamak, log kayıtları oluşturmak veya yüklenen resimleri yönetmek için FS modülüne her zaman ihtiyaç duyacaksınız.