如何使用JavaScript仅读取CSV文件特定列

时间:2018-06-26 09:32:56

标签: javascript reactjs csv

我已经使用react-file-reader为csv阅读器创建了一个功能。它工作正常,数据已成功上传到数据库,但是csv文件有10列以上。我只需要前三列和第五列。

那是我的代码

const reader = new FileReader();
reader.readAsText(files[0]);
reader.onload = (x) => {
  console.log('check data 1 :', x);
  console.log('check data :', x.currentTarget.result.split('/n'));

  const lines = x.currentTarget.result.split('\n');

  const result = [];

  for (let i = 0; i < lines.length - 1; i++) {
    const obj = {};
    //const newObj = lines.splice(4,1);
    const currentline = lines[i].split(',');
    const headers = ['ac_no', 'name', 'date_time', 'check_type'];
    for (let j = 0; j < headers.length; j++) {

          obj[headers[j]] = currentline[j];

    }

    result.push(obj);

  }

你能帮我吗?

1 个答案:

答案 0 :(得分:1)

您可以添加列索引数组,在其中设置要选择的列,例如

const headers = ['ac_no', 'name', 'date_time', 'check_type'];
const columns = [0, 1, 2, 4];
for (let j = 0; j < headers.length; j++) {

      obj[headers[j]] = currentline[columns[j]];

}