0
"BEGIN DATA"と "END DATA"区切り文字の間でデータを解析して読み込むために必要な非常に大きなファイルがあります。大きなファイルの読み込みと解析
私はそうのような「FS」ライブラリを使用して簡単にファイルを開くことができます。
fs.readFile(files[0], 'utf8', function (err, data) {
if (err) return console.log(err);
console.log(data)
});
はしかし、私は大量のメモリを使用しないので、ストリームを経由して、ブロック内の区切り文字の間でデータを読み取る必要があります。
-----BEGIN DATA-----
MIIEzDCCArSgAwIBAgIVCugKYzMN5ra8zPWxYE8pUU9SxjYSMA0GCSqGSIb3DQEB
CwUAMHAxCzAJBgNVBAYTAkdCMRUwEwYDVQQIDAxXYXJ3aWNrc2hpcmUxEDAOBgNV
BAcMB1dhcndpY2sxEDAOBgNVBAoMB0VudHJ1c3QxETAPBgNVBAsMCFBLSSBURUFN
-----END DATA-----
-----BEGIN DATA-----
MIIETzCCAjegAwIBAgIVBShP2Mx74DZEyNKwYZZPGntRmSWnMA0GCSqGSIb3DQEB
DQUAMHIxCzAJBgNVBAYTAkdCMRUwEwYDVQQIDAxXYXJ3aWNrc2hpcmUxEDAOBgNV
BAcMB1dhcndpY2sxDDAKBgNVBAoMA0lCTTERMA8GA1UECwwIUEtJIFRFQU0xGTAX
5/62
-----END DATA-----
感謝。しかし、私はライブラリの使い方をやめることができません。私はこれをしました 'const readFile = _.wrapCallback(fs.readFile); const stream = _(['myfile.txt'])。map(readFile).parallel(2); 'データを取得する方法を理解できません – user1513388
提供されているサンプルコードを試してください。 '_.each()'に与えられたコールバックは区切られたブロックのそれぞれの内容で呼び出されます。区切られたブロックの内容は、分割して行ごとに処理することができます。 –