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 
    
  • 相关阅读:
    [Android开发]cocos2dx工程中接入支付宝sdk
    cocos2dx android SDK接入总结
    Cocos2d-vs避免过长编译的小技巧
    math.h里的数学计算公式介绍
    Cocos Code IDE入门指南
    kbengine引擎的安装
    游戏服务端pomelo完整安装配置过程
    cocos2d-x 两个场景间进行传参数
    cocos2d-x 设置全局可变变量
    如何将cocos2d-x项目打包成一个.exe
  • 原文地址:https://www.cnblogs.com/7c89/p/14938830.html
Copyright © 2011-2022 走看看