2017-08-28 8 views
1

タブを列区切り文字として使用するCSVファイルを解析しようとしています。私は下のエラーを取得しています:私は使用していますエラー:列数が5行目で矛盾しています - CSVを解析中

Error: Number of columns is inconsistent on line 5 
at Parser.__push (/Users/mesamhaider/Desktop/workspace/Order_CSV_Parsing_Tool/node_modules/csv-parse/lib/index.js:248:14) 
at Parser.__write (/Users/mesamhaider/Desktop/workspace/Order_CSV_Parsing_Tool/node_modules/csv-parse/lib/index.js:469:20) 
at Parser._transform (/Users/mesamhaider/Desktop/workspace/Order_CSV_Parsing_Tool/node_modules/csv-parse/lib/index.js:182:14) 
at Parser.Transform._read (_stream_transform.js:190:10) 
at Parser.Transform._write (_stream_transform.js:178:12) 
at doWrite (_stream_writable.js:371:12) 
at writeOrBuffer (_stream_writable.js:357:5) 
at Parser.Writable.write (_stream_writable.js:274:11) 
at ReadStream.ondata (_stream_readable.js:626:20) 
at emitOne (events.js:115:13) 

コードを以下に示します。

const fs = require('fs'); 
const parse = require('csv-parse'); 

fs.createReadStream('../in/*.csv') 
    .pipe(parse({delimiter : ' '})) 
    .on('data', function(row){ 
     console.log(row) 
    }) 

コードがコンソールではなく例の目的のためにそれをログに記録するよりもはるかに多くのことを行います、私は置きますそれはこの方法です。また、一度これを解析すると、SQL INSERT文の各列を入力することができますか?

+0

についてはこちらを参照してくださいあなたのCSVファイルには、各行の列の一貫性のある番号で、有効ですか? – koolkat

+0

@koolkat - そうだと思います。ただし、特定の行の値を保持しない列があります。それがこの問題を引き起こしているのでしょうか? – mesmama

+0

空の値は空の文字列 ''''として解釈されるので、問題はありません。オンラインの 'CSVリンター 'を使ってあなたの' CSV'を検証してみてください。 – koolkat

答えて

0

次のコード例があります。このコードを実行するには、shouldノードモジュールをインストールしてください。

  • あなたはwrite()機能と、その中parser()機能
  • 書き込みでパーサを作成
  • on.finish()でデータを取得します。

    const fs = require('fs'); 
    const parse = require('csv-parse'); 
    require("should"); 
    
    var myReadStream = fs.createReadStream('../in/*.csv'); 
    
    var parser = parse({delimiter: ':'}); 
    
    parser.write(myReadStream); 
    
    parser.on('error', function(err){ 
        console.log(err.message); 
    }); 
    
    parser.on('finish', function(){ 
        output.should.eql([Bunch of arrays here from the file]); 
    }); 
    

よりinformation.

関連する問題