CSV dosyaları uygun bir veri depolama biçimidir ve bunları Node.js projelerinizde yapılandırmadan ham verilere kadar her şeyi işlemek için kullanabilirsiniz. Farklı dillerde yazılmış olsalar bile iki uygulama arasında bilgi paylaşımını basitleştirebilirler.
Node.js'de CSV dosyalarını okumak ve yazmak için çeşitli yöntemler kullanabilirsiniz.
Bu eğitim, nasıl kullanılacağını gösterir. fs modül ve hızlı-csv CSV dosyalarını okumak ve yazmak için NPM paketi.
Proje Kurulumu
Bu öğreticiyi takip etmek için makinenizde Node.js'nin kurulu olduğundan emin olun. Kontrol etmek için bu komutu çalıştırın:
-v düğümü
Bir sürüm numarası döndürmelidir. Node.js kurulu değilse, bu bölümdeki talimatları izleyin. kurulum eğitimi böyle yaparak.
Tercih ettiğiniz dizinde parse-csv adlı yeni bir klasör oluşturun.
mkdir ayrıştırma-csv
Şu yöne rotayı ayarla ayrıştırma-csv ve yeni bir dosya oluşturun. ParseCSV.js olarak adlandırın.
CD ayrıştırma-csv
dokunmakayrıştırmaCSV.js
Artık CSV ile çalışmaya başlayabilirsiniz.
fs Modülünü Kullanma
fs (dosya sisteminin kısaltması) modülü, Node.js'deki dosya sistemiyle etkileşim için birkaç komut içerir.
Tüm Dosyayı Aynı Anda Okuyun
bu okumaDosyası() ve readFileSync() gelen komutlar fs modülü, Node.js'deki dosya içeriğini okumanızı sağlar. Bu komutlar arasındaki fark, readFileSync() eşzamanlıdır—diğer JavaScript'in yürütülmesini engeller—bu sırada okumaDosyası() eşzamansızdır veya engellemez.
CSV dosyalarını okumak, özellikle büyük dosyalar için biraz zaman alabileceğinden, genellikle engellemeyen komutu kullanmak daha iyidir, okumaDosyası(), Aşağıda gösterildiği gibi.
const fs = gerekmek('fs');
fs.readDosya('csvdemo.csv', 'utf8', işlev (hata, veri) {
/* verileri ayrıştır */
});
Örnek bir CSV dosyanız yoksa, bir tane oluşturabilirsiniz. alay. Ayrıca nasıl yapılacağını da öğrenebilirsiniz bir CSV dosyası oluştur kendin.
Satır Satır Oku
Süre okumaDosyası() çalışır, tüm CSV dosyasını bir kerede okuduğu için yoğun bellek gerektirir. Bu, özellikle büyük CSV dosyalarıyla çalışırken bir sorundur. Bir alternatif, kullanarak her seferinde bir satır okumaktır. fs.createReadStream() emretmek.
const fs = gerekmek("fs");
const okuma satırı = gerekmek("okuma satırı");
const akışı = fs.createReadStream("./csvdemo.csv");
const rl = readline.createInterface({ giriş: aktarım });
İzin Vermek veri = [];rl.on("astar", (satır) => {
data.push (satır.split(","));
});
rl.on("kapat", () => {
konsol.log (veri);
});
Burada, CSV dosya adını şuraya aktarıyorsunuz: fs.createReadStream() okunabilir bir akış oluşturmak için. Akışlar, yığınlar halinde erişmenize izin vererek büyük miktarda veriyle çalışmanıza olanak tanır.
Okunabilir akışı oluşturduktan sonra, onu readline.createInterface() yöntem. bu okuma satırı modül, verileri bir seferde bir satır okumak için bir arayüz sağlar. Artık her satırı okunurken veri dizisine gönderebilirsiniz.
Ancak, bu kodun her satırı virgülle ayırdığını unutmayın. Bu, en temel CSV dosyasıyla çalışacak olsa da, biçim aslında adından da anlaşılacağı gibi daha karmaşıktır. CSV dosyalarını manuel olarak ayrıştırmak, özellikle verilerin kontrolü sizde değilse, sağlam bir yaklaşım değildir. Çoğu durumda bir CSV kitaplığı kullanmalısınız.
hızlı-csv kullanma
CSV dosyalarını güvenilir bir şekilde ayrıştırmak için aşağıdaki gibi bir kitaplık kullanabilirsiniz. hızlı-csv, bir npm paketi olarak mevcuttur. Yalnızca CSV dosyalarını okumayı değil, aynı zamanda biçimlendirmeyi de kolaylaştırır.
Başlamak için, başlat npm ve yükleyin hızlı-csv.
npm başlangıç -y
npm ve hızlı-csv
Fast-csv kullanarak CSV dosyalarını aşağıdaki gibi okuyun.
const fs = gerekmek('fs')
const csv = gerekmek('hızlı-csv');
const veri = []
fs.createReadStream('./csvdemo.csv')
.boru(csv.parse({ başlıklar: doğru }))
.üzerinde('hata', hata => konsol.hata (hata))
.üzerinde('veri', satır => data.push (satır))
.üzerinde('son', () => konsol.log (veri));
Yukarıdaki kodda, CSV dosyasından okunabilir bir akış oluşturarak başlayın, ardından bunu kullanarak hızlı CSV'den ayrıştırma yöntemine bağlayın. boru(). Başlıklar seçeneğini ilettiğinizi unutmayın. csv.parse(). Bu ilk satırı atlar. Başlıkları şuna ayarla yanlış CSV dosyanızın ilk satırı başlık içermiyorsa.
CSV dosyası her seferinde bir satır okunurken, her satırı veri dizisine gönderirsiniz. Tüm dosya okunduktan sonra veri dizisinin içeriğini istediğiniz gibi değiştirebilirsiniz.
Bir CSV'yi Ayrıştırmanın Birden Fazla Yolu Var
CSV dosyaları, ayrıştırılması kolay olduğu için büyük veri kümelerini depolamak için kullanışlıdır. Node.js'de yerleşik fs modülünü veya NPM paketlerini kullanabilirsiniz.
fast-csv gibi bir kitaplık kullanmak, kendi ayrıştırma kodunuzu manuel olarak yazmaktan çok daha kolay ve sağlamdır. CSV'yi ayrıştırmak için diğer bazı paketler şunlardır: csv ayrıştırıcı ve baba ayrıştırıcı.
Node.js'deki RESTful API'ler için Yeni Başlayanlar Kılavuzu
Sonrakini Oku
İlgili konular
- Programlama
- Programlama
- JavaScript
Yazar hakkında

Mary Gathoni, yalnızca bilgilendirici değil, aynı zamanda ilgi çekici teknik içerik oluşturma tutkusuna sahip bir yazılım geliştiricisidir. Kod yazmadığı veya yazmadığı zamanlarda arkadaşlarıyla takılmaktan ve dışarıda olmaktan hoşlanıyor.
Haber bültenimize abone ol
Teknik ipuçları, incelemeler, ücretsiz e-kitaplar ve özel fırsatlar için bültenimize katılın!
Abone olmak için buraya tıklayın