javascript 将文本文件或csv拆分为指定行数的较小文件

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了javascript 将文本文件或csv拆分为指定行数的较小文件相关的知识,希望对你有一定的参考价值。

/* Change these */
var outName = "list"; //output file prefix
var inFile = "deleteProducts.xml"; //input file
var outFolder = "splitCSVs"; //folder name
var fileLength = 150000; //lines per file
var logEvery = 10000; //how often to log progress (in lines)
var outFormat = ".xml"; //output format (include .)
/* Change Variables above */
var fs = require('fs');
var LineByLineReader = require('line-by-line');
var lineCount = 0;
var outCount = 1;

var outFile = outName + outCount;

lrInner = new LineByLineReader(inFile);
lrInner.on('error', function(err) {
    // 'err' contains error object
    console.log(err);
});
lrInner.on('line', function(lineInner) {
    lrInner.pause();
    lineCount++;
    if (lineCount % fileLength == 0) {
        outCount++;
        outFile = outName + outCount;
        fs.writeFile("./" + outFolder + "/" + outFile + outFormat, "", function(err) {
            if (err) {
                console.log(err);
            }
            console.log(outFile + " created");
        });
    }
    fs.appendFile('./splitCSVs/' + outFile + outFormat, lineInner + "\r\n", function(err) {
        if (err) {
            console.log("file error:" + err);
        }
        //console.log(lineInner);
        if (!(lineCount % logEvery)) {
            console.log(lineCount + " lines processed");
        }
        lrInner.resume();
    });

});
lrInner.on('end', function() {
    console.log("all done! " + outCount + "files created");
});

以上是关于javascript 将文本文件或csv拆分为指定行数的较小文件的主要内容,如果未能解决你的问题,请参考以下文章

使用Python将单行的文本拆分为CSV文件中同一列的多行

sh 将带有标题行的CSV /文本类型文件拆分为多个文件,并将标题行复制到每个文件中。

拆分 csv 行并转换数值(Typescript、Javascript)

将嵌入的 CSV 文本拆分为单独的行

根据行值python将大型csv文件拆分为多个文件

Pandas 按列将 CSV 拆分为多个 CSV(或 DataFrame)