- 关 键 词:
- firewall
namespace TestXMLHelper {
using System;
using System.XML;
using System.Collections;
using RobBirdwell.XMLHelper;
/*******
The following classes serve as a simple test app for the XMLHelper module.
It attempts to load "MyTestObj.XML" - the text for this is at the bottom
of this listing.
This is a work in progress and provided solely to test and learn C#.
********/
class TestXMLHelper // Test class for XMLHelper
{
static int Main(string[] args)
{
Console.WriteLine("Begin XML Load test...");
MyManager nm = new MyManager();
if (nm.Load() == true)
Console.WriteLine("End Load Test - XML Data Loaded Successfully!");
else
Console.WriteLine("End Load Test - XML Load FAILED!");
Console.WriteLine("Begin XML Create test...");
// Demonstrate how we can create an XML document from scratch...
XMLHelper myXML = new XMLHelper();
myXML.LoadXML("<MyRootNode/>", XMLHelper.LoadType.FromString);
// Now create some children - Elements & Attributes...
XMLElement XMLChildFolder = myXML.CreateNodeElement(myXML.RootNode, "ChildFolder", "");
XMLAttribute XMLChildAttribute1 = myXML.CreateNodeAttribute(XMLChildFolder, "Price", "12.00");
XMLElement XMLChildElement = myXML.CreateNodeElement(XMLChildFolder, "ChildElementOfChildFolder", "Test element with a <tag> to test encoding");
XMLElement XMLSubChildFolder = myXML.CreateNodeElement(XMLChildFolder, "SubFolderOfChildFolder", "");
XMLElement XMLSubChildElement = myXML.CreateNodeElement(XMLSubChildFolder, "SubChildElement", "This is a sub element!");
XMLAttribute XMLChildAttribute2 = myXML.CreateNodeAttribute(XMLSubChildFolder, "Price", "10.00");
// Now save this XML document...
myXML.SaveToFile("myXMLTest.XML");
Console.WriteLine("End XML Create test - view myXMLTest.XML");
// Now demonstrate how we can load XML, modify it, and resave it!
Console.WriteLine("Begin XML Load/Modify/Save test...");
XMLHelper modifyXML = new XMLHelper();
modifyXML.LoadXML("myXMLTest.XML", XMLHelper.LoadType.FromLocalFile);
// Change something
ArrayList foundNodes = modifyXML.GetChildNodesFromCriteria("descendant::ChildFolder");
foreach (XMLNode theNode in foundNodes)
{
XMLNode nodeToModify = modifyXML.GetFirstChildXMLNode(theNode, "ChildElementOfChildFolder");
if (nodeToModify != null)
modifyXML.ModifyNodeElementValue(nodeToModify, "Modified value: " + DateTime.Now);
}
modifyXML.SaveToFile("myModifiedXMLTest.XML");
Console.WriteLine("End XML Load/Modify/Save test - see 'myModifiedXMLTest.XML' to see modification results to ChildElementOfChildFolder");
// Now show that we can load XML from a URL...
// Note: if behind a firewall this fail - comment out if necessary!
Console.WriteLine("Start XML Load/Save test from URL");
XMLHelper readFromURL = new XMLHelper();
string sTestURL = "http://www.birdwellmusic.com/bmpdata.XML";
readFromURL.LoadXML(sTestURL, XMLHelper.LoadType.FromURL);
readFromURL.SaveToFile("fromURL.XML");
Console.WriteLine("End XML Load/Save test from URL - see fromURL.XML");
return 0;
}
}
// A test class that contains some data, arrays, etc. The usual bits...
class MyTestObj
{
private string m_ID;
private string m_DateCreated;
private string m_DateModified;
private string m_Text;
private ArrayList m_URLS = new ArrayList();
public string ID
{
get {return m_ID; }
set {m_ID = value;}
}
public string DateCreated
{
get {return m_DateCreated; }
set {m_DateCreated = value; }
}
public string DateModified
{
get {return m_DateModified; }
set {m_DateModified = value; }
}
public string Text
{
get {return m_Text; }
set {m_Text = value;}
}
public void AddMyURL(MyURL MyURL)
{
m_URLS.Add(MyURL);
}
}
// Another test class - contains some members to store URL link info...
class MyURL
{
private string m_Label;
private string m_Link;
public string Label
{
get {return m_Label; }
set {m_Label = value;}
}
public string Link
{
get {return m_Link; }
set {m_Link = value;}
}
}
// A test "manager" class that wraps up our test classes and uses the XMLHelper
class MyManager
{
private XMLHelper m_XMLHelper;
private ArrayList m_MyTestObjArray = new ArrayList();
public MyManager()
{
m_XMLHelper = new XMLHelper();
}
public void AddMyTestObj(MyTestObj MyTestObj)
{
m_MyTestObjArray.Add(MyTestObj);
}
public bool Load()
{
if (m_XMLHelper.LoadXML("MyTestObj.XML", XMLHelper.LoadType.FromLocalFile) == false)
return false;
XMLNodeList objNodes = m_XMLHelper.GetChildNodesFromRoot("Obj");
foreach (XMLNode XMLNode in objNodes)
{
MyTestObj MyTestObj = new M巧 巧 读 书:http://www.qqread.com/xml-soap/g228732.html进入讨论组讨论。
相关图文阅读
频道图文推荐
健 康 咨 询
时 尚 咨 询
相关专题
- XHTML 代码规范 (530次浏览)
- XML之CSS和XSL精解(1) (314次浏览)
- 利用Digester把XML转换成为Java对象 (143次浏览)
- XML SOAP应用简介 (131次浏览)
- W3C XML Schema 与文档类型定义 (116次浏览)
- XML、DataSet、DataGrid结合写成广告管理程 (109次浏览)
- dotText源码阅读(4)--DTO和数据访问 (108次浏览)
- Publishing Pages with PUT (65次浏览)
- 如何用MSXML2操作XML配置文件 (14次浏览)



