概要
JavaScriptでCSVを読み込む場合、自力を実装するよりはPapa Parseのようなライブラリを利用したほうが色々ラクです。
Papa Parseを利用するメリット
- シンプルで使いやすい
- RFC 4180に基づいている
- 区切り文字は自動検知
- 改行やクォーテーションを正しく処理してくれる
ネットファイルをダウンロードして読み込む例
const res = await fetch('http://localhost/test.csv');
if (!res.ok) {
throw new Error(`HTTP error! status: ${res.status}`);
}
const csvText = await res.text();
Papa.parse<CsvData>(csvText, {
header: true, // ヘッダ行あり
skipEmptyLines: true, // 空行を無視
complete: ({ data }) => {
setCsvData(data);
},
});