前端读取.txt文档内容实现

项目开发时遇到一个需求,需要读取客户存在.txt文档中的手机号批量发送短信。 有2种实现方式

1: 前端将.txt 文档上传到服务端 前端校验文建格式,服务器端解析文档,校验文档内容,取手机号发送短信。 

2:前端解析.txt 文档 读取其中的内容 并校验文档中的内容是否合法,将通过校验后的数据 采用ajax的方式发送到给后台

根据网上的一些资料 写了一个测试前端解析的demo。

<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8" />
    <title>前端解析.txt文档demo</title>
</head>
<body>
<input type="file" id="fileSubmit" />
</body>
<script>
    document.getElementById('fileSubmit').addEventListener('change',function(){
        readFile(this,function(data){
            console.log(data);
       },function(){
           alert('解析文件出错');
       })
    });
    function readFile(input,sc,ec) {
        //支持chrome IE10
        if (window.FileReader) {
            var file = input.files[0];
            filename = file.name.split(".")[0];
            var reader = new FileReader();
            reader.onload = function() {
                sc(this.result);
            };
            reader.readAsText(file);
        }
        //支持IE 7 8 9 10
        else if (typeof window.ActiveXObject != 'undefined'){
            var xmlDoc;
            xmlDoc = new ActiveXObject("Microsoft.XMLDOM");
            xmlDoc.async = false;
            xmlDoc.load(input.value);
            sc(xmlDoc);
        }
        //支持FF
        else if (document.implementation && document.implementation.createDocument) {
            var xmlDoc;
            xmlDoc = document.implementation.createDocument("", "", null);
            xmlDoc.async = false;
            xmlDoc.load(input.value);
            sc(xmlDoc);
        } else {
            ec();
        }
    }
</script>
</html>

 

posted @ 2017-02-13 14:29  灰头像  阅读(5474)  评论(0编辑  收藏  举报