Node.js ile Dosya Okuma ve Yazma Nasıl Yapılır?
Node.js'te dosya okuma ve yazma işlemleri basit ve hızlıdır. Bu makalede fs modülünü kullanarak dosya okuma ve yazma yöntemlerini örneklerle öğreneceksiniz.
Node.js ile Dosya Okuma ve Yazma Nasıl Yapılır?
21 Şubat 2026
Node.js, dosya işlemleri için fs (file system) modülünü sağlar. Bu modül sayesinde dosyaları okuyabilir, yazabilir, silebilir veya değiştirebilirsiniz. Dosya okuma ve yazma işlemleri, hem senkron hem de asenkron olarak yapılabilir.
Dosya Okuma
Öncelikle dosya okuma işlemini inceleyelim. Asenkron okuma tercih edilir; çünkü bloklama yapmaz ve diğer işlemler devam eder.
const fs = require('fs');
// Asenkron dosya okuma
fs.readFile('example.txt', 'utf8', (err, data) => {
if (err) {
console.error('Dosya okunamadı:', err);
return;
}
console.log('Dosya içeriği:', data);
});
Yukarıdaki kodda, fs.readFile fonksiyonu ile example.txt dosyası okunur. İçerik başarılı bir şekilde okunursa data parametresine atanır ve konsola yazdırılır.
Senkron Dosya Okuma
Senkron olarak da dosya okunabilir, ancak bu işlem programın akışını durdurur:
try {
const data = fs.readFileSync('example.txt', 'utf8');
console.log('Dosya içeriği:', data);
} catch (err) {
console.error('Dosya okunamadı:', err);
}
Dosya Yazma
Dosyaya yazma işlemi de benzer şekilde asenkron olarak yapılabilir:
const content = 'Bu, Node.js ile yazdığımız bir dosya örneğidir.';
fs.writeFile('output.txt', content, 'utf8', (err) => {
if (err) {
console.error('Dosya yazılamadı:', err);
return;
}
console.log('Dosya başarıyla yazıldı.');
});
Bu örnekte output.txt dosyasına content değişkenindeki içerik yazılır.
Senkron Dosya Yazma
Senkron dosya yazma örneği:
try {
fs.writeFileSync('output.txt', content, 'utf8');
console.log('Dosya başarıyla yazıldı.');
} catch (err) {
console.error('Dosya yazılamadı:', err);
}
Özet
- fs.readFile: Asenkron dosya okuma.
- fs.readFileSync: Senkron dosya okuma.
- fs.writeFile: Asenkron dosya yazma.
- fs.writeFileSync: Senkron dosya yazma.
Asenkron metodlar performans açısından tercih edilmelidir. Dosya işlemlerini tamamladıktan sonra işlem sonuçlarını yakalamak için callback veya Promise yapıları kullanılabilir.
Gelişmiş kullanımda fs/promises modülü ile Promise tabanlı API de tercih edilebilir. Böylece async/await ile daha okunabilir kod yazabilirsiniz:
const fsPromises = require('fs').promises;
async function dosyaIslemleri() {
try {
const data = await fsPromises.readFile('example.txt', 'utf8');
console.log('Dosya içeriği:', data);
await fsPromises.writeFile('output.txt', data);
console.log('Dosya başarıyla yazıldı.');
} catch (err) {
console.error('Hata:', err);
}
}
dosyaIslemleri();
Node.js ile dosya okuma ve yazma işlemleri bu şekilde kolayca yapılabilir. Kod örneklerini kendi projenize entegre ederek hızlıca dosya işlemleri gerçekleştirebilirsiniz.
