Xerces C++ÕýÈ·´¦ÀíXMLÎĵµ
1¡¢Xerces-C++ÊÇʲô£¿
Xerces-C++ µÄÇ°ÉíÊÇ IBM µÄ XML4C ÏîÄ¿¡£XML4C ºÍ XML4J ÊÇÁ½¸ö²¢ÁеÄÏîÄ¿£¬¶ø XML4J ÊÇ Xerces-J——Java ʵÏÖ——µÄÇ°Éí¡£IBM ½«ÕâÁ½¸öÏîÄ¿µÄÔ´´úÂëÈÃÓë Apache Èí¼þ»ù½ð»á(Apache Software Foundation)£¬ËûÃǽ«Æä·Ö±ð¸ÄÃûΪ Xerces-C++ ºÍ Xerces-J¡£ÕâÁ½¸öÏîÄ¿ÊÇ Apache XML ×éµÄºËÐÄÏîÄ¿£¨Èç¹û¿´µ½µÄÊÇ“Xerces-C”¶ø²»ÊÇ“Xerces-C++”£¬Ò²ÊÇͬһ¸ö¶«Î÷£¬ÒòΪÕâ¸öÏîÄ¿Ò»¿ªÊ¼¾ÍÊÇÓà C£¨ÒëÕß×¢£ºÔÎÄΪC++£©ÓïÑÔ±àдµÄ£©¡£
2¡¢Xerces-C++: ¹¦ÄܽéÉÜ
Xerces-C++ÊÇÒ»¸ö·Ç³£½¡×³µÄ XML ½âÎöÆ÷,ÆäÌṩµÄÁ½ÖÖ½âÎöXMLÎĵµµÄ·½·¨,DOMºÍSAX (ÎÒÊDzÉÓÃDOM·½·¨)¡£
SAXÊÇÒ»¸öÃæÏòʼþµÄ±à³ÌAPI.Ò»¸ö½âÎöÒýÇæÏûºÄXMLÐòÁÐÊý¾Ý,²¢ÔÚ·¢ÏÖ½øÀ´µÄXMLÊý¾ÝµÄ½á¹¹Ê±»Øµ÷Ó¦ÓóÌÐò,ÕâЩ»Øµ÷³ÆΪʼþ¾ä±ú.
ÓëSAX²»Í¬,ËüÔÊÐí¶ÔXMLÎĵµ½øÐб༲¢±£´æΪһ¸öÎļþ»òÕßÁ÷,»¹ÔÊÐíÒÔ±à³ÌµÄ·½Ê½¹¹½¨Ò»¸öXMLÎĵµ.DOMÌṩÁËÒ»¸öÄÚ´æÖеÄÄ£ÐÍ,Äã¿ÉÒÔ±éÀúÎĵµÊ÷,ɾ³ý½Úµã»òÕß¼Þ½Óнڵã.Óë½âÎöµÄSAXʼþ²»Í¬,DOMʼþ·´Ó³³öÓû§ÓëÎĵµµÄ»¥¶¯ÒÔ¼°Ê¹ÓÃÎĵµµÄ¸Ä±ä.
×ܵÄÀ´Ëµ,SAXÊÇ°´ÐбéÀúXMLÎĵµµÄ,¶øDOMÊÇÏÈ°ÑXMLÎĵµÉú³ÉÊ÷,È»ºó±éÀúDOMÊ÷,À´½âÎöÿ¸ö½Úµã.
Xerces-C++£ºÑ§Ï°µÄ¹ý³Ì
2.1¡¢Æ½Ì¨Ñ¡Ôñ£º
ÔÚѧϰXerces-C++֮ǰÄã±ØÐëÑ¡ÔñÒ»ÖÖÓ¦ÓÃƽ̨£¬¿ÉÒÔÊÇwindows¡¢linux¡¢cygwin£¬ÒÔ¼°solarisµÈϵͳƽ̨¡£ÔÚÕâÀÎÒÑ¡ÓõÄÊÇRedhat Enterprise Linux AS3,Ñ¡ÓõÄXerces-C++ ÊÇxerces-c-src_2_7_0.tar.gz£¬¿ÉÒÔ´Ó¹Ù·½ÍøÕ¾£ºhttp://www.apache.org/ Ö±½ÓÏÂÔØ¡£
2.2¡¢±àÒëÔ´Âë
ÓÉÓÚÎÒÏÂÔØÏÂÀ´µÄÊÇÔ´Â룬ËùÒÔÐèÒª¶ÔÆä½øÐбàÒ룬·ñÔòÎÒÃÇÎÞ·¨¼ÓÔØ¿âÎļþ¡£
Ê×ÏȽøÈëÄãµÄ¹¤×÷Ŀ¼£ºcd /home/olcom/laubo£¨ÕâÊÇÎÒµ±Ç°¹¤×÷Ŀ¼£©
È»ºó½âѹÄãµÄÔ´Âë°ü£º tar zxvf xerces-c-src_2_7_0.tar.gz
ÉèÖðüº¬Ô´´úÂëµÄ»·¾³±äÁ¿£º
&
Ïà¹ØÎĵµ£º
2.2 ½â¾ö¿É²âÐÔÎÊÌâ
ÉÏÒ»½Ú¾ßÌå·ÖÎöÁ˿ɲâÐÔÎÊÌ⣬½ÓÏÂÀ´£¬ÎÒÃÇÀ´¿´¿´ÈçºÎ½â¾öÕâЩÎÊÌâ¡£ÏÂͼÖУ¬²ÊÉ«µÄ²¿·ÖÊÇÐèÒª½â¾öµÄ¿É²âÐԵľßÌåµÄÎÊÌâ¡£
ÓëÆäËû´úÂë¸ôÀë
ΪÁËÌá¸ßЧÂÊ£¬Ó¦¸ÃÒ»´ÎÐÔ½«Ò»Î»¹¤³Ìʦ¸ºÔðµÄ²âÊÔÈÎÎñ¸ôÀë³öÀ´¡£¸ôÀëʱ£¬Ó¦°ÑÔ´Îļþ·ÖΪÈýÀࣺ± ......
Ò» DOM ÒÔÏ´úÂëÓÃDOMÊÇÉú³ÉÒ»¸öXMLÎĵµ
package xml;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
import javax.xml.parsers.ParserConfigurationException;
imp ......
ÎÄÕÂ×÷ÕߣºSlyar
ÏÈ¿´Á½¸ö´úÂ룬µÚÒ»¸öÊÇC³ÌÐò£¬µÚ¶þ¸öÊÇC++³ÌÐò£¬³ýÁËÍ·Îļþ²»Í¬ÒÔÍâÆäËûµÄ¶¼Ò»Ñù¡£
//demo.c
#include <stdio.h>
int foo();
int main()
{
int a;
foo(a);
return 0;
}
int foo(int a)
{
}//demo.cpp
#include <iostream>
int foo();
int main()
{
in ......
¹¤×÷ÖÐÓöµ½ÐèÒªºÏ²¢XMLµÄÎÊÌ⣬Ëì´ÓÍøÉϲéÕÒÏà¹Ø×ÊÁÏ£¬
1¡¢ ¡¶ XML merging made easy
¡·
2 ¡¢¡¶javaÖкϲ¢xmlÎĵµµÄÉè¼ÆÓëʵÏÖ
¡·
²âÊÔºó·¢ÏÖ¾ù²»·ûºÏʵ¼ÊÐèÇó£¬Êµ¼ÊÐèÇóÈçÏ£º
file1.xml:
<root>
<a>
<b name="1"/>
</a>
<d /& ......
package com.flxx.docUrl;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;
import java.util.List;
import org.jdom.Document;
import org.jdom.Element;
import org.jdom.input.SAXBuilder;
import org.jdom.output.Format;
import org.jd ......