读写XML文件
原文:使用 MSXML 分析器处理 XML 文档
#include <atlbase.h>
#include <iostream>
using namespace std;
//<?xml version="1.0"?>
//<xmldata>
//<xmlnode />
//<xmltext>Hello, World!</xmltext>
//</xmldata>
void main()
{
//初始化COM运行库
CComPtr<IXMLDOMDocument> spXMLDOM;
HRESULT hr = CoInitialize(NULL);
hr=spXMLDOM.CoCreateInstance(__uuidof(DOMDocument));
if (FAILED(hr))
throw "Unable to create XML parser object!";
if(spXMLDOM.p==NULL)
throw "Unable to create XML parser object!";
//将XML文档加载到分析器
VARIANT_BOOL bSuccess=false;
hr=spXMLDOM->load(CComVariant(L"1.xml"),&bSuccess);
if(FAILED(hr))
throw "Unable to load XML document into the parser!";
if (!bSuccess)
throw "Unable to load XML document into the parser!";
//查找节点
CComBSTR bstrSS(L"xmldata/xmlnode");
CComPtr<IXMLDOMNode> spXMLNode;
hr=spXMLDOM->selectSingleNode(bstrSS,&spXMLNode);
if (FAILED(hr))
throw "Unable to locate 'xmlnode' XML node!";
if (spXMLNode.p == NULL)
throw "Unable to locate 'xmlnode' XML node!";
//在该节点下创建子节点
CComPtr<IXMLDOMNode> spXMLChildNode;
hr=spXMLDOM->createNode(CComVariant(NODE_ELEMENT),CComBSTR("xmlchildnode"),NULL,&spXMLChildNode);
if(FAILED(hr))
&
相关文档:
下载 dom4j-1.6.1.jar。
1: package org.zzp.common.xml.dom4j;
2:
3: import java.io.FileWriter;
4: import java.io.IOException;
5: import org.dom4j.Document;
6: import org.dom4j.DocumentHelper;
7: import org.dom4j.Element;
8: import org.dom4j.io.OutputFormat;
9: impor ......
在很多情况下, 我们会用到XML,比如说配置文件等.C#提供了XML类.
这里我只是简单的写一下XML文件的生成,解析就不多说了.
第一种方法
DataBase db = DataBaseFactory.CreateDataBase(DataBaseType.MySql, strMysql);
......
这篇文章被转载的次数最多,其实代码简陋得我自己都看不下去。只不过发表这篇文章时很多人需要这个功能。
这几天写个数据库查询分析器,要用到XML记录用户注册的数据库连接地址、端口等信息,最开始想用java ......
首先我们给出一段示例程序:
import
java.io.File;
import
java.io.FileWriter;
import
java.util.Iterator;
import
org.dom4j.Document;
import
org.dom4j.DocumentHelper;
import
org.dom4j.Element;
import
org.dom4j.io.OutputFormat;
import
org.dom ......
public sealed class XmlHelper
{
public static void Serialize<T>(T obj,string fileName)
{
TextWriter writer = new StreamWriter(fileName);
try
{
XmlSerializer ser = new XmlSerializer(typeof(T));
......