Javascript使用csv文件中的新行创建字符串

时间:2018-11-22 20:01:48

标签: javascript reactjs papaparse

我试图在React中加载csv文件,然后将其格式化为带有换行符的字符串。问题是这样的: 在此代码块之后:

makeArrayString() {
  let array = this.state.tempData;
  let finalArray = [];
  array.forEach(function(element) {
    let joinedEl = element.join(",");
    finalArray.push(joinedEl + "\n");
  });

控制台输出如下:

0: "5.1,3.5,1.4,0.2,setosa↵"
1: "4.9,3,1.4,0.2,setosa↵"
2: "4.7,3.2,1.3,0.2,setosa↵"
3: "4.6,3.1,1.5,0.2,setosa↵"
4: "5,3.6,1.4,0.2,setosa↵"

由于↵char,我无法将这种格式发送到服务器上的python脚本。但是,当执行此代码块时:

finalArray = finalArray + "";
finalArray.split("\n").map((item, key) => {
  return (
    <React.Fragment key={key}>
      {item}
      <br />
    </React.Fragment>
  );
});
console.log(finalArray);

数据现在看起来像这样:

5.1,3.5,1.4,0.2,setosa
,4.9,3,1.4,0.2,setosa
,4.7,3.2,1.3,0.2,setosa
,4.6,3.1,1.5,0.2,setosa
,5,3.6,1.4,0.2,setosa

这只是需要的字符串,只有行首的那些逗号妨碍了。现在,数据集是一个巨大的字符串,我找不到在行首删除那些逗号的方法。是否有办法通过更改任何这些步骤来获得良好的格式? 我还使用Papa Parse读取带有该块的csv文件:

loadCsv() {
Papa.parse(Iris, {
  header: false,
  download: true,
  dynamicTyping: true,
  complete: results => {
    this.setState({ tempData: results.data });
    //console.log(this.state.tempData);
    this.makeArrayString();
  }
});

}

0 个答案:

没有答案