我有一个需要读取的文本文件。 文本文件示例如下:
Login,Name,Surname
Rd-001,Raj,Dolka
RS-932,Ram,Selmen
我只想读取所有登录信息并将它们添加到数组中,以便稍后将它们添加到数据库中。
我能够读取该文件,但我只需要登录名,不需要其数据、姓名。
我的代码如下:
<!DOCTYPE html>
<html>
<head>
<title>reading file</title>
<script type="text/javascript">
var reader = new FileReader();
function readText(that){
if(that.files && that.files[0]){
var reader = new FileReader();
reader.onload = function (e) {
var output=e.target.result;
//process text to show only lines with "-":
output=output.split("\n").filter(/./.test, /\-/).join("\n");
document.getElementById('main').innerHTML= output;
};//end onload()
reader.readAsText(that.files[0]);
}//end if html5 filelist support
}
</script>
</head>
<body>
<input type="file" onchange='readText(this)' />
<div id="main"></div>
</body>
</html>
最佳答案
我知道其他发帖者已经提到过使用 split
,但这里有一个片段,实际上可以让您根据问题中描述的文本结构仅解析登录信息:
output = output.split("\n").filter((line, i) => i != 0).map(line => line.split(",")[0]).join("\n");
filter
调用的要点是排除第一行(标题行)。 map
调用的要点是仅包含每行中的第一项。
关于javascript - 读取文本文件的一部分,并将值以 ","分隔插入到数组中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51476085/