zoukankan      html  css  js  c++  java
  • JavaScript如何解析本地xml文件

    本地解析

    上传文件

    <input
        class="input"
        ref="file"
        type="file"
        @change="handleFileChange"
    />       
    

    解析file对象

    获取file对象,获取到本地url路径地址

    // 获取本地上传文件路径
    const getUploadUrl = function(flie) {
        let url = "";
        if (window.createObjectURL != undefined) {
            // basic
            url = window.createObjectURL(flie);
        } else if (window.webkitURL != undefined) {
            // webkit or chrome
            url = window.webkitURL.createObjectURL(flie);
        } else if (window.URL != undefined) {
            // mozilla(firefox)
            url = window.URL.createObjectURL(flie);
        }
        return url; // 返回这样的一串地址 blob:http://www.xxxx.com/2c230fa5-ecc4-4314-ae7c-c39eaa66a945
    };
    

    解析文件,获得xml对象

    const loadXML = function(xmlFile) {
        var xmlDom = null;
        if (window.ActiveXObject) {
            xmlDom = new ActiveXObject("Microsoft.XMLDOM");
            xmlDom.async = "false";
            xmlDom.load(xmlFile);
        } else if (
            document.implementation &&
            document.implementation.createDocument
        ) {
            var xmlhttp = new window.XMLHttpRequest();
            xmlhttp.open("GET", xmlFile, false);
            xmlhttp.send(null);
            xmlDom = xmlhttp.responseXML;
        } else {
            xmlDom = null;
        }
        return xmlDom; // 返回的是一个doucument的对象
    };
    

    document对象转字符串

    let url = getUploadUrl(file); // 文件对象
    let xml = loadXML(url);
    let text = new XMLSerializer().serializeToString(xml) // 将text赋值给textarea阔以了
    
    // 赋值文本框
    var element = document.getElementById('textarea');
    element.value  = text 
    
  • 相关阅读:
    P4168 [Violet]蒲公英
    P3320 [SDOI2015]寻宝游戏
    P2487 [SDOI2011]拦截导弹
    P3338 [ZJOI2014]力(FFT)
    P1975 [国家集训队]排队
    P4103 [HEOI2014]大工程
    虚树小结
    LVS初步
    常见指针定义解读
    可epoll队列
  • 原文地址:https://www.cnblogs.com/7c89/p/14938830.html
Copyright © 2011-2022 走看看