InfernoShade 1
InfernoShade
farkmt2official 1
farkmt2official
romegames 1
romegames
bikral 1
bikral
PrimeAC 1
PrimeAC
shrpnl 1
shrpnl
Agora Metin2 1
Agora Metin2
xranzei 1
xranzei
Bvural41 1
Bvural41
noisiv 1
noisiv
Manwe Work 1
Manwe Work
Karan2offical 1
Karan2offical
Hikaye Ekle

Altın Konu Node.js İle CSV Dosyaları Nasıl Okunur

  • Konuyu başlatan Konuyu başlatan ByMoDuS
  • Başlangıç tarihi Başlangıç tarihi
  • Cevaplar Cevaplar 1
  • Görüntüleme Görüntüleme 521

ByMoDuS

Fahri Üye
Fahri Üye
Katılım
30 Nis 2011
Konular
1,324
Mesajlar
5,827
Çözüm
20
Online süresi
6mo 6d
Reaksiyon Skoru
5,737
Altın Konu
235
Başarım Puanı
379
MmoLira
27,342
DevLira
27
Ticaret - 0%
0   0   0

HERAKLES Otomatik Avlı kalıcı sunucu. 19 Haziran'da açılıyor. Atius & Wizard güvencesiyle hemen kayıt ol, ön kayıt ödülleri aktif. HEMEN TIKLA!

1.jpg

Node.js İle CSV Dosyaları Nasıl Okunur
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.

Foto1.jpg

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:

Bir sürüm numarası döndürmelidir. Node.js kurulu değilse, bunu yapmak için bu kurulum eğitimindeki talimatları izleyin. Tercih ettiğiniz dizinde parse-csv adlı yeni bir klasör oluşturun.
mkdir parse-csv
parse-csv'ye gidin ve yeni bir dosya oluşturun. ParseCSV.js olarak adlandırın.
cd parse-csv
touch parseCSV.js
fs Modülünü Kullanma

fs dosya sisteminin kısaltması modülü, Node.js'deki dosya sistemiyle etkileşim kurmak için birkaç komut içerir.
Tüm Dosyayı Aynı Anda Okuyun

fs modülündeki readFile () ve readFileSync() komutları, Node.js'deki dosya içeriğini okumanızı sağlar. Bu komutlar arasındaki fark, readFileSync() öğesinin eşzamanlı olmasıdır; diğer JavaScript'in yürütülmesini engellerken, readFile() öğesinin eşzamansız olması veya engellememesidir. CSV dosyalarını okumak, özellikle büyük dosyalar için biraz zaman alabileceğinden, aşağıda gösterildiği gibi engelleme yapmayan readFile() komutunu kullanmak genellikle daha iyidir.
const fs = require('fs');

fs.readFile('csvdemo.csv', 'utf8', function (err, data) {
/* parse data */
});
Foto3.jpg

Satır Satır Oku

readFile() çalışırken, tüm CSV dosyasını bir kerede okuduğu için bellek yoğundur. Bu, özellikle büyük CSV dosyalarıyla çalışırken bir sorundur. Bir alternatif, fs.createReadStream() komutunu kullanarak her seferinde bir satır okumaktır.
const fs = require("fs");
const readline = require("readline");
const stream = fs.createReadStream("./csvdemo.csv");
const rl = readline.createInterface({ input: stream });
let data = [];

rl.on("line", (row) => {
data.push(row.split(","));
});

rl.on("close", () => {
console.log(data);
});

Burada, okunabilir bir akış oluşturmak için CSV dosya adını fs.createReadStream() öğesine iletiyorsunuz. 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öntemine iletin. Readline modülü, verileri bir seferde bir satır okumak için bir arayüz sağlar.
Foto7.jpg

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.
Foto5.jpg

Hızlı-csv Kullanma

CSV dosyalarını güvenilir bir şekilde ayrıştırmak için, npm paketi olarak sunulan fast-csv gibi bir kitaplık kullanabilirsiniz. Yalnızca CSV dosyalarını okumayı değil, aynı zamanda biçimlendirmeyi de kolaylaştırır. Başlamak için npm'yi başlatın ve fast- csv'yi kurun.
npm init -y
npm i fast-csv
Fast-csv kullanarak CSV dosyalarını aşağıdaki gibi okuyun.
const fs = require('fs')
const csv = require('fast-csv');
const data = []

fs.createReadStream('./csvdemo.csv')
.pipe(csv.parse({ headers: true }))
.on('error', error => console.error(error))
.on('data', row => data.push(row))
.on('end', () => console.log(data));

Yukarıdaki kodda, CSV dosyasından okunabilir bir akış oluşturarak başlayın, ardından bunu pipe() kullanarak hızlı CSV'den ayrıştırma yöntemine bağlayın. Başlıklar seçeneğini csv.parse() öğesine ilettiğinizi unutmayın ve bu ilk satırı atlar. CSV dosyanızın ilk satırı başlık içermiyorsa, başlıkları false olarak ayarlayın.
Foto6.jpg
 
Paylaşım için teşekkürler, elinize sağlık :)
 

Şu an konuyu görüntüleyenler (Toplam : 0, Üye: 0, Misafir: 0)

Geri
Üst