QTÖÐʹÓÃQXmlStreamReader½âÎöXMLÎļþ
XMLÎļþÓÉÓÚÆäÀ©Õ¹ÐÔÓë¼æÈÝÐÔµÄÓŵ㣬±»¹ã·ºÓÃ×÷Èí¼þºÍϵͳµÄÅäÖÃÎļþ¡£ÕâÀï¼òÒª½éÉÜÒ»ÏÂQTÏÂÈçºÎÀ´½âÎöXMLÎļþ¡£
Ô´´úÂ룺
xml_reader.h
#ifndef XML_READER_H
#define XML_READER_H
#include <QtCore>
//#include <QtGui>
class xml_reader : public QXmlStreamReader
{
//Q_OBJECT
public:
xml_reader();
bool read(QIODevice *device);
private:
void read_data();
void read_startweek();
void read_eventnumber();
void read_period();
void read_id();
void read_starttime();
void read_endtime();
void read_exception();
void read_subexception();
void read_description();
void read_duration();
void read_event();
void read_offsettime();
void read_eventdesc();
void read_eventname();
void read_prompt();
void read_lasthandle();
void read_unknow();
};
#endif // XML_READER_H
xml_reader.cpp
#include "xml_reader.h"
xml_reader::xml_reader()
{}
bool xml_reader::read(QIODevice *device)
{
setDevice(device);
while(!atEnd())
{
readNext();
if(isStartElement())
{
if(name() == "data")
{
read_data();
}
}
}
return !error();
}
void xml_reader::read_data()
{
qDebug()<<"Start to read data...";
while(!atEnd())
{
readNext();
if(isStartElement())
{
if(name() == "period")
{
read_period();
}
if(name() == "startweek")
{
read_startweek();
}
if(name() == "eventnumber")
{
read_eventnumber();
}
}
if(isEndElement())
{
if(name() == "data")
{
qDebug()<<"Now at the end of data element...";
break;
}
}
}
}
void xml_reader::read_startweek()
{
Ïà¹ØÎĵµ£º
xml£º
<?xml version="1.0" encoding="utf-8" ?>
<library>
<name>Ê×¶¼Í¼Êé¹Ý</name>
<address>³¯ÑôÇø»ªÍþÇÅÄÏ</address>
<books>
<book type="math">
<id>0000</id>
</book&g ......
<?xml version="1.0"?>
<BANK_CREATE01>
<IDOC BEGIN="1">
<EDI_DC40 SEGMENT=" ......
ÎÄÕÂÀ´Ô´£ºIT¹¤³Ì¼¼ÊõÍø http://www.systhinker.com/html/43/n-11643.html
ÓõÄÊÇÒ»Öֺܱ¿µÄ·½·¨£¬µ«¿ÉÒÔ°ïÖú³õѧÕßÁ˽â·ÃÎÊXML½ÚµãµÄ¹ý³Ì¡£
ÒÑÖªÓÐÒ»¸öXMLÎļþ£¨bookstore.xml£©ÈçÏÂ:
<?xml version="1.0" encoding="gb2312"?>
<bookstore>
<book genre="fantasy" ISBN="2-3631-4">
......
ÕâÊÇһƪ½²½âÈçºÎʹÓÃXMLʵÏÖFlashÓëͨÐŵÄÈëÃż¶ÊµÀý½Ì³Ì¡£Í¨¹ý±¾ÀýµÄѧϰ£¬ÎÒÃǽ«Á˽âʹÓÃXML¿ª·¢Flash RIAsµÄ»ù±¾Á÷³Ì¡£
´ÓFlash Player 5¿ªÊ¼£¬¾Í¿ÉÒÔʹÓÃXML¶ÔÏóÀ´ÊµÏÖFlashÓëºǫ́ͨÐÅ¡£Flashä¯ÀÀÆ÷ÓëXMLÊý¾ÝÖ®¼äµÄÖ±½Ó½øÐÐÊý¾Ý½»»»£¬²¢ÇÒͬLoadVarsº¯ÊýÒ»Ñù£¬¶¼ÊÇÒÔ×Ö·û´®ÐÎʽ´«µÝµÄ¡£ºǫ́ÓïÑÔ×÷ΪXMLÊý¾ÝºÍÊý¾Ý¿â ......
JAXB¸ÅÒª
JAXBΪJava Architecture for XML BindingµÄËõд£¬ÒâΪXML°ó¶¨µÄJAVA¿ò¼Ü¡£ËüÌṩÁËÒ»Ì׿ÉÒÔ¼òµ¥´æÈ¡XMLÊý¾ÝµÄAPI£¬Í¬Ê±£¬JAXB¿ÉÒÔ¸ù¾ÝXMLµÄschema×Ô¶¯Éú³É²Ù×÷XMLµÄJAVAÀà¡£ÀûÓÃJAXB£¬Ê¹ÓÃJAXB×Ô¶¯Éú³ÉµÄ²Ù×÷XMLµÄJAVAÀ࣬¿ÉÒÔ»ù±¾Éϲ»Óÿ¼ÂÇXML½á¹¹¶ø¼òµ¥µØ´æÈ¡XMLÊý¾Ý¡£
JAXBµÄÏÂÔØÓë°²×°
JAXBÖÁÉÙÐèÒªµ¼ÈëÒ ......