1

以前に node.js を使用したことがありません。
マグネット リンクのリストを含む .txt ファイルを用意します。これらのリンクに含まれるすべてのファイルのリストを含む json ファイルを書きたい。

var WebTorrent = require('webtorrent');
var fs = require('fs');
var client = new WebTorrent();
var array = fs.readFileSync('yop.txt').toString().split("\n");
i = 0;
while (i < array.length) {
//console.log(array[i]);
var magnetURI = array[i];
n = 0;
client.add(magnetURI, function (torrent) {
    torrent.files.forEach(function (file) {
        //console.log( file.name)
        jsonString = JSON.stringify({'book': file.name});
        fs.appendFile("data.json", jsonString, function (err) {
            if (err) {console.log(err);} else { n++ }
        });
        if (n == torrent.files.length) {i++ }
    })
})

}

実行すると次のエラーが表示
されます。このようなひどいコードで申し訳ありません。

4

1 に答える 1

1
var WebTorrent = require('webtorrent')
var fs = require('fs')
var stream = fs.createWriteStream("2.txt");
var client = new WebTorrent()
var array = fs.readFileSync('yop.txt').toString().split("\n");

i = 0;

function parseMagnet (uri){

    var magnetURI = uri[i]
    console.log(magnetURI)
    client.add(magnetURI, function (torrent) {
      torrent.files.forEach(function (file) {
        writeStr = (uri[i]+ '\n'+ file.name+ '\n');
        stream.write(writeStr);
       console.log(file.name)       
      });
       console.log('Done !') 
       console.log(i)
       i += 1          
       parseMagnet(array);
       client.remove(magnetURI);
    })

}

parseMagnet(array)
于 2016-05-16T17:34:26.903 に答える