AXzhz

专注ASP.NET!
        写软件的都是小姐,用软件的都是大爷。真TMD说的正确!
                嫖妓不给钱,反说被强奸!___中国共享软件的无奈!
读小学的时候大学不要钱,读大学了小学不要钱。
没工作时国家有分福利房,工作了后全是高价房!!

                        此软件能有效的破解QQ密码。(注:破解QQ密码是违法行为,请不要将软件用于违法行为)
“安得广厦千万间,大庇天下寒士俱欢颜,风雨不动安如山。”1200多年前,诗人杜甫的理想,如今被一帮享受着电脑和互联网带来的快捷生活方式的受过高等教育的大孩子憧憬着。

导航

XML常用操作总结_AX

Ⅰ*.cs部分
using System;
using System.Collections.Generic;
using System.Text;

namespace OperateXML
{
    
class Program
    
{
        
static void Main(string[] args)
        
{
            System.IO.StringWriter sw 
= new System.IO.StringWriter();
            System.Xml.XmlWriter xtw 
= new System.Xml.XmlTextWriter(sw);

            xtw.WriteStartDocument();
            xtw.WriteStartElement(
"Root");

            xtw.WriteStartElement(
"Node_AX");
            xtw.WriteAttributeString(
"Attribute""AttributeValue0");
            xtw.WriteString(
"AXzhz");//----好像WriteString()与WriteValue()没有区别----
            xtw.WriteEndElement();

            xtw.WriteStartElement(
"Node");
            xtw.WriteAttributeString(
"Attribute""AttributeValue1");
            xtw.WriteValue(
"<AX1>");//-------
            xtw.WriteEndElement();

            xtw.WriteStartElement(
"Node");
            xtw.WriteAttributeString(
"Attribute""AttributeValue2");
            xtw.WriteString(
"<AX>");//------
            xtw.WriteEndElement();

            xtw.WriteEndElement();
            xtw.WriteEndDocument();

            
//Output:【注】一个XML文档只有一个根节点,JS中亦然.
            
//<?xml version="1.0" encoding="utf-16"?>
            
//<Root>
            
//  <Node_AX Attribute="AttributeValue0">AXzhz</Node_AX>
            
//  <Node Attribute="AttributeValue1">&lt;AX1&gt;</Node>
            
//  <Node Attribute="AttributeValue2">&lt;AX&gt;</Node>
            
//</Root>
            Console.WriteLine(sw.ToString());

            Console.WriteLine(
"-----------------上生成,下使用---------------");

            System.Xml.XmlDocument xmlDom 
= new System.Xml.XmlDocument();
            xmlDom.LoadXml(sw.ToString());

            
//【添加一个节点】
            System.Xml.XmlNode newNode = xmlDom.DocumentElement.ChildNodes[1].Clone();
            newNode.Attributes[
"Attribute"].Value = "NewNode";
            newNode.InnerText 
= "NewNodeText";
            xmlDom.DocumentElement.AppendChild(newNode);

            
//【Get Attributes】
            
//大小写Sensitive
            System.Xml.XmlNodeList xnl = xmlDom.GetElementsByTagName("Node_AX");
            
//AttributeValue0
            Console.WriteLine(xnl[0].Attributes["Attribute"].Value);

            
            
//【取所有名为【Node】的节点集合的两种方法.】
            
//-----------Method1----------
            xnl = xmlDom.GetElementsByTagName("Node");
            
for (int i = 0; i < xnl.Count; i++)
            
{
                Console.WriteLine(xnl[i].InnerText);
            }

            
//-----------Method2----------
            xnl = xmlDom.SelectNodes("Root/Node");
            
for (int i = 0; i < xnl.Count; i++)
            
{
                Console.WriteLine(xnl[i].InnerText);
            }



            
//【Get node's Content】
            
//取第一个节点名为【Node】的节点
            System.Xml.XmlNode xn = xmlDom.SelectSingleNode("Root/Node");
            
//<AX1>
            Console.WriteLine(xn.InnerText);
            
//&lt;AX1&gt;
            Console.WriteLine(xn.InnerXml);


            
//【获得相邻节点】
            Console.WriteLine(xn.PreviousSibling.InnerXml);
            
//■■■■■■■■■■■■■■■■■■■■■■■■■■
            
//■【注】不要取节点的Value,是Null,暂时还不知道Why  ■
            
//■■■■■■■■■■■■■■■■■■■■■■■■■■
            Console.WriteLine(xn.PreviousSibling.Value);
            Console.WriteLine(xn.NextSibling.InnerText);
             


            
//【Delete oneself,xn不是根节点】
            xn.ParentNode.RemoveChild(xn);
            Console.ReadLine();
        }

    }

}


ⅡJS部分
/*
Create by AX
2007-9-10
*/


//创建XML对象
function createXMLDOM()
{
    
var arrSignatures=["MSXML2.DOMDocument.5.0","MSXML2.DOMDocument.4.0",
                        
"MSXML2.DOMDocument.3.0","MSXML2.DOMDocument","Microsoft.XmlDom"];
    
for(var i=0;i<arrSignatures.length;i++)
    
{
        
try
        
{
            
var oXmlDom=new ActiveXObject(arrSignatures[i]);
            
return oXmlDom;
        }

        
catch(e)
        
{            
        }

    }

}


//调用这个Function
function OpertateXML()
{
    
var xmlDom=createXMLDOM();
    xmlDom.async
=false;
    xmlDom.loadXML(
"<?xml version=\"1.0\" encoding=\"utf-16\"?>"
                    
+"<Root>"
                    
+"<Node_AX Attribute=\"AttributeValue0\">AXzhz</Node_AX>"
                    
+"<Node Attribute=\"AttributeValue1\">&lt;AX1&gt;</Node>"
                    
+"<Node Attribute=\"AttributeValue2\">&lt;AX&gt;</Node>"
                    
+"<Node Attribute=\"NewNode\">NewNodeText</Node>"
                    
+"</Root>");
    
//加载文件用
    //xmlDom.load("C:\AX.xml");
    
    
//添加Node
    //cloneNode(true)表示同时clone其子nodes
    var newNode=xmlDom.getElementsByTagName("Node_AX")[0].cloneNode(true);
    
//更改Attribute
    newNode.setAttribute("Attribute","newNode");
    
//更改节点内容
    newNode.text="newNodeText";
    xmlDom.documentElement.appendChild(newNode);
    
    
    
//取Node类型的第二个节点
    var selectSecondNode=xmlDom.getElementsByTagName("Node")[1];
    
//取得Attribute
    alert(selectSecondNode.getAttribute("Attribute"));
    
//取得节点内容
    alert(selectSecondNode.text);
    
    
    
//遍历节点
    var selectedTag=xmlDom.getElementsByTagName("Node");
    
for(var i=0;i<selectedTag.length;i++)
    
{
        selectedTag[i].text
+="Loop_AX";
    }

    
    
    
//显示带标签的内容
    alert(newNode.xml);
    alert(xmlDom.xml);  
    
    
    
//取得相邻节点
    alert(selectSecondNode.previousSibling.xml);
    alert(selectSecondNode.nextSibling.xml); 
}


博客园斧头帮少帮主

posted on 2007-09-10 20:17  斧头帮少帮主  阅读(1238)  评论(1编辑  收藏  举报

Google
 
站内搜索:        
园内搜索:
金山词霸: