2016-08-01 1 views
1

JSを使用してデータの配列からCSVファイルを生成しています。JSでCSVを生成すると余分な空の列が追加される

マイデータのダウンロード前にこのです:

var csv = 
"Date,valA,valB,valC,valD,AVG 
2016-07-01 12:00,393917,211,38534,640,9.78%, 
2016-07-01 01:00,342278,171,38131,547,11.14%, 
2016-07-01 02:00,265238,168,29395,547,11.08%,"; 

すべての行が終わり("\n")に改行文字があります。

私は、文字列の先頭にMIMEタイプを追加します、

csv = 'data:text/csv;charset=utf-8,' + csv;

をしてから&ダウンロードをエンコード:

data = encodeURI(csv); 
link = document.createElement('a'); 
link.setAttribute('href', data); 
link.setAttribute('download', filename); 
link.click(); 

すべてが正常に動作しますが、そこに最終的なファイルで何らかの理由で空の列です。

私はthis questionを調べましたが、それはあまりにも詳細です。私はここの解決策は非常に簡単かもしれないと思います。

私はここで間違っていますか?

答えて

1

改行の直前にすべての行にカンマ(",")が付いていたという事実が、余分な後続列を引き起こしたことが判明しました。

私がしなければならなかったことは、私の行が改行文字で終わっていることを確認することでした。

csv文字列がなければならない:

var csv = 
"Date,valA,valB,valC,valD,AVG 
2016-07-01 12:00,393917,211,38534,640,9.78% 
2016-07-01 01:00,342278,171,38131,547,11.14% 
2016-07-01 02:00,265238,168,29395,547,11.08%"; 

(末尾のコンマに気づきません)。

関連する問題