您的位置:首页 > Web前端 > JavaScript

用JavaScript读取本地XML文件

2016-10-12 20:57 375 查看
1. 本地XML文件:VehicleTest1.xml

<?xml version="1.0" encoding="utf-8"?>  

<Root>  

  

    <CurrentStatus>  

        <LicensePlateNumber>鄂EA12345</LicensePlateNumber>  

        <CurrentTime>2011-11-20</CurrentTime>  

        <Speed>60Km/h</Speed>  

        <Lon>10646270</Lon>  

        <Lat>2955278</Lat>  

    </CurrentStatus>  

  

    <CurrentStatus>  

        <LicensePlateNumber>渝A77881</LicensePlateNumber>  

        <CurrentTime>2010-03-21</CurrentTime>  

        <Speed>88Km/h</Speed>  

        <Lon>10646252</Lon>  

        <Lat>2955755</Lat>  

    </CurrentStatus>  

  

    <CurrentStatus>  

        <LicensePlateNumber>渝A77882</LicensePlateNumber>  

        <CurrentTime>2010-03-22</CurrentTime>  

        <Speed>88Km/h</Speed>  

        <Lon>10646200</Lon>  

        <Lat>2956039</Lat>  

    </CurrentStatus>  

  

    <CurrentStatus>  

        <LicensePlateNumber>渝A77883</LicensePlateNumber>  

        <CurrentTime>2010-03-23</CurrentTime>  

        <Speed>88Km/h</Speed>  

        <Lon>10646561</Lon>  

        <Lat>2956337</Lat>  

    </CurrentStatus>  

  

    <CurrentStatus>  

        <LicensePlateNumber>渝A77884</LicensePlateNumber>  

        <CurrentTime>2010-03-24</CurrentTime>  

        <Speed>88Km/h</Speed>  

        <Lon>10646526</Lon>  

        <Lat>2957069</Lat>  

    </CurrentStatus>  

  

    <CurrentStatus>  

        <LicensePlateNumber>渝A77885</LicensePlateNumber>  

        <CurrentTime>2010-03-25</CurrentTime>  

        <Speed>88Km/h</Speed>  

        <Lon>10644054</Lon>  

        <Lat>2957487</Lat>  

    </CurrentStatus>  

  

    <CurrentStatus>  

        <LicensePlateNumber>渝A77886</LicensePlateNumber>  

        <CurrentTime>2010-03-26</CurrentTime>  

        <Speed>88Km/h</Speed>  

        <Lon>10644055</Lon>  

        <Lat>2957488</Lat>  

    </CurrentStatus>  

  

    <CurrentStatus>  

        <LicensePlateNumber>渝A77887</LicensePlateNumber>  

        <CurrentTime>2010-03-27</CurrentTime>  

        <Speed>88Km/h</Speed>  

        <Lon>10644140</Lon>  

        <Lat>2956412</Lat>  

    </CurrentStatus>  

  

    <CurrentStatus>  

        <LicensePlateNumber>渝A77888</LicensePlateNumber>  

        <CurrentTime>2010-03-28</CurrentTime>  

        <Speed>88Km/h</Speed>  

        <Lon>10644311</Lon>  

        <Lat>2954993</Lat>  

    </CurrentStatus>  

  

    <CurrentStatus>  

        <LicensePlateNumber>渝A77889</LicensePlateNumber>  

        <CurrentTime>2010-03-29</CurrentTime>  

        <Speed>88Km/h</Speed>  

        <Lon>10645101</Lon>  

        <Lat>2953410</Lat>  

    </CurrentStatus>  

  

    <CurrentStatus>  

        <LicensePlateNumber>渝A7788A</LicensePlateNumber>  

        <CurrentTime>2010-03-30</CurrentTime>  

        <Speed>88Km/h</Speed>  

        <Lon>10646217</Lon>  

        <Lat>2951990</Lat>  

    </CurrentStatus>  

  

</Root>  

2. JavaScript代码:VehicleTest1.htm

<html>  

<head>  

<meta http-equiv="Content-Type" content="text/html; charset=gb2312">  

<title>javascript 读取 xml文件</title>  

<SCRIPT LANGUAGE="JavaScript">  

      

var xmlDoc;                      /* DOM对象 */;  

var objNodeList;                               /* 对象结点列表 */  

var Node;                                           /* 以CurrentStatus为标记的结点 */  

var LicensePlateNumber;             /* 车牌号码 */  

var CurrentTime;                             /* 当前GPS时间 */  

var Speed;                                        /* 车速 */  

var Lon;                                             /* 经度 */  

var Lat;                                              /* 维度 */  

  

function JavaScriptReadXML()  

{  

   

 xmlDoc =  new ActiveXObject("Microsoft.XMLDOM");     /* 创建DOM对象 */  

 xmlDoc.async= false;                                         /* 非异步加载模式 */  

 xmlDoc.load('C:/VehicleTest1.xml');              /* 加载本地XML文件 */  

  

if (xmlDoc.parseError.errorCode != 0)           /* 解析XML文件内容 */  

    {  

   var myErr = xmlDoc.parseError;  

   document.write("You have error " + myErr.reason);  

     }   

else   

{  

   objNodeList = xmlDoc.getElementsByTagName("CurrentStatus");  

   for (var i=0; i<objNodeList.length; i++)                                                     /* 读取总的结点数 */  

   {  

      

     Node = objNodeList[i];  

     for( var k = 0; k < Node.childNodes.length; k++ )                               /* 各个结点逐个击破 */  

     {  

         if( Node.childNodes[k].nodeName == "LicensePlateNumber" )      /* 车牌号码 */  

           LicensePlateNumber = Node.childNodes[k].text;      

             

           if( Node.childNodes[k].nodeName == "CurrentTime" )                      /* 当前GPS时间 */  

           CurrentTime = Node.childNodes[k].text;  

  

           if( Node.childNodes[k].nodeName == "Speed" )                                  /* 车速 */  

           Speed = Node.childNodes[k].text;    

             

           if( Node.childNodes[k].nodeName == "Lon" )                                       /* 经度 */  

           Lon = Node.childNodes[k].text;    

             

           if( Node.childNodes[k].nodeName == "Lat" )                                          /* 维度 */  

           Lat  = Node.childNodes[k].text;                    

     }  

       

      document.write(LicensePlateNumber+"<br>");  

      document.write(CurrentTime+"<br>");  

      document.write(Speed+"<br>");     

      document.write(Lon+"<br>");  

      document.write(Lat+"<br>");     

      document.write("<br>");     

        

   }   

}  

}  

  

</SCRIPT>  

</head>  

<body onload="JavaScriptReadXML()" >  

</body>  

</html>  

3. 读取结果:

鄂EA12345  

2011-11-20  

60Km/h  

10646270  

2955278  

  

渝A77881  

2010-03-21  

88Km/h  

10646252  

2955755  

  

渝A77882  

2010-03-22  

88Km/h  

10646200  

2956039  

  

渝A77883  

2010-03-23  

88Km/h  

10646561  

2956337  

  

渝A77884  

2010-03-24  

88Km/h  

10646526  

2957069  

  

渝A77885  

2010-03-25  

88Km/h  

10644054  

2957487  

  

渝A77886  

2010-03-26  

88Km/h  

10644055  

2957488  

  

渝A77887  

2010-03-27  

88Km/h  

10644140  

2956412  

  

渝A77888  

2010-03-28  

88Km/h  

10644311  

2954993  

  

渝A77889  

2010-03-29  

88Km/h  

10645101  

2953410  

  

渝A7788A  

2010-03-30  

88Km/h  

10646217  

2951990  
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: