逐行读取文本文件并使用数据进行输入

时间:2017-02-06 04:55:20

标签: javascript jquery

我正在阅读一个文本文件,我知道该文件的每一行是什么。

例如,第一行是起始坐标对,格式为{“x”:9,“y”:9},第二行是结束坐标对。

存在全局变量var startCoord = {"x": startX, "y": startY};

如何从文件中提取x和y以分别设置为新的startCoord.xstartCoord.y

JSFiddle here

文本文件示例:

{"x":9,"y":9}
{"x":4,"y":104}
{"x":124,"y":51}
{"x":92,"y":65}
{"x":113,"y":31}

1 个答案:

答案 0 :(得分:1)

您需要将每行中的JSON解析为对象,以便访问xy等属性。为此,只需更改

即可
var obj = lines[0] // or whatever index you want to parse

var obj = JSON.parse(lines[0])

https://jsfiddle.net/8h3u2vxd/1/

我还会优化你的for循环

const lines = this.result.split('\n');
if (lines.length > 0 && lines.length % 2 > 0) {
  throw 'Invalid data format'
}
for (let i = 0, l = lines.length; i < l; i += 2) {
  let startObj = JSON.parse(lines[i])
  let endObj = JSON.parse(lines[i + 1])
  // and so on  
}

https://jsfiddle.net/8h3u2vxd/2/