首先,我输入了这个文件并将所有行分开了split()函数。然后,我保存了位置(var lat和lng)和土壤类型,但问题是如果我不使用'for'循环并检查没有此循环的代码是否正常工作,然后它正在工作。 这是我想要阅读的文本文件的链接:
https://drive.google.com/file/d/0B_NBRSiUy-R1ZmhwOVhCZFQ4cWc/view?usp=sharing
请帮助。
<html>
<head>
</head>
<body>
<input type="file" id="fileinput" />
<script type="text/javascript">
function readSingleFile(evt) {
var f = evt.target.files[0];
if (f) {
var r = new FileReader();
r.onload = function(e) {
var contents = e.target.result;
var lines = contents.split('\n');
var lng = new Array();
var lat = new Array();
var soil = new Array();
var splitted = new Array();
var k;
for(var i=0;i<lines.length;i++){
splitted = lines[i].split(" ");
lng[i] = splitted[0];
lat[i] = splitted[1];
k = splitted.length - 5;
document.write("First Step Done");
switch(k){
case 1:
soil[i]= splitted[5];
break;
case 2:
soil[i]= splitted[5] + " " + splitted[6];
break;
case 3:
soil[i]= splitted[5] + " " + splitted[6] + " " + splitted[7];
break;
case 4:
soil[i]= splitted[5] + " " + splitted[6] + " " + splitted[7] + " " + splitted[8];
break;
}
}
document.write("done");
r.readAsText(f);
} else {
alert("Failed to load file");
}
}
document.getElementById('fileinput').addEventListener('change',readSingleFile, false);
</script>
</body>
</html>
答案 0 :(得分:0)
你错过了一个大括号:
document.write("done");
}; // <-- this is missing
r.readAsText(f);