5
ile okuyun. Satır satırını okumak istediğim sıkıştırılmış bir gzip dosyası var.Gzip akış hattını satır
var fs = require('fs')
var zlib = require('zlib')
var gunzip = zlib.createGunzip()
var inp = fs.createReadStream('test.gz')
var n = 0
var lineProcessing = function (err, data) {
if (!err) {
n += 1
console.log ("line: " + n)
console.log (data.toString())
}
}
inp
.on('data', function (chunk) {
zlib.gunzip (chunk, lineProcessing)
})
.on('end', function() {
console.log ('ende');
});
Ben yalnızca önümüzdeki \n
kadar okumak zlib.createGunzip
için ChunkSize ayarlamanız gerekir sanırım. Ama dinamik olarak nasıl belirlenir?
Ne Çýkartýlan akışı başka bir fonksiyon oluşturur yerine yerel Sıkıştırılmış dosyayı çıkarttıktan akışı istiyorsanız ne olacak? Readline.js dosyasından gelen bazı garip hatalar alıyorum .. – Tomas
@Tomas "düzenli" akışı (gzipli değil) işlemek istediğiniz anlamına mı geliyor? Herhangi bir okunabilir akışı "input" için argüman olarak kullanabilirsiniz. – robertklep
zlib.gunzip() kaynağından bir akış kullanmaya çalışıyorum. iş akışım: aws s3'ten dosya alıyorum, bunu gunzip kullanarak açın, sonra akışı akış çizgisine aktarın ama bana hata atıyor, bu akımın tutarsız mı yoksa bir şey mi olabilir? – Tomas