2017-12-05 4 views
0

配列にCSVファイルを解析します。しかし、私は問題があります。私はCSVファイル名を取得しますが、私はこのparthを解析するときにこのエラーを返します。 '提供されたファイルtest.csvが存在しないかアクセスできない' この問題を解決するにはどうすればよいですか?csvと配列を解析するにはどうしたらいいですか?

const csv = require('csv-array'); 

router.post('/upload', function(req,res){ 
    let test = req.files.test.name //this return me uploaded file name 
    csv.parseCSV(test, (data) => { 
     console.log(data); //this parth return me 'The provided file 
            //test.csv doesn't exists or inaccessible' 
    }) 
}) 
+0

パスが存在しないと思います。あなたのファイルシステムでtest.csvを探しています。そして、あなたはディスクではなくメモリにファイルを持っています。私がすることは、csv-arrayがストリームまたはバイト配列をファイルとして受け取り、その形式で要求からファイルを取得できるかどうかを確認することです。私はバスボイをお勧めします。 – jollarvia

+0

Expressを使用している場合は、https://www.npmjs.com/package/express-fileuploadに従って、req.files.test.dataがファイルバッファを取得する必要があります。あなたがBase-64から解読する必要があるかどうかは確かではありませんが、そのバッファを適切なCSV配列関数に渡してみてください – jollarvia

答えて

0

csv-array packageのparseCSVメソッドでは、最初の引数がファイル名であると想定しています。 console.log(req.files.test.name)が何であるか教えてください。

それはまさに「のtest.CSV」であると仮定すると、あなたが述べたように、あなたの誤差は、明らかである:

The provided file test.csv doesn't exists or inaccessible 

(1)あなたのスクリプトが

(から実行されている場所にファイルが実際に存在することを確認します2)それが本当に存在する場合(そしてあなたが正しい場所を指している場合)、そのアクセス許可を確認します。アプリケーションを実行している人は誰でも読み取り許可を与える必要があるかもしれません。

関連する問題