Symbian——½âÎöXMLÎļþ
ZT:http://www.mobpub.net/archiver/?tid-28.html
Symbianѧϰ±Ê¼Ç(15)——½âÎöXMLÎļþ(ÉÏ)
½ñÌìÏë·ÖÏíµÄÊÇÈçºÎÔÚSymbianƽ̨ÉϽâÎöXMLÎļþ£¬²»ÐèÒªµÚÈý·½µÄ¶«Î÷£¬SymbianÒѾΪÎÒÃÇÌṩÁËÕâ¸öÀàCParser¡£
ÍøÉÏÒ²ÓÐÕâ·½ÃæµÄ×ÊÁÏ£¬½¨Òé²Î¿¼£º
[url]http://wiki.forum.nokia.com/index.php/How_to_parse_XML_file_using_CParser_class[/url]
²»¹ý£¬Òª×¢ÒâµÄÊÇSymbianÖеÄCParserÊÇ»ùÓÚSAX·½Ê½À´½âÎöµÄÒ²¾ÍÊÇ˵ËüÊÇ»ùÓÚʼþÁ÷·½Ê½£¬¶ÔÓÚSAX£¬Èç¹û×ö¹ýJAVA¿ª·¢µÄÒ»°ã²»»áİÉúÁË¡£ÓëDOMÏà±ÈSAX·½Ê½ÔÚ²Ù×÷ÉÏ»áÓеãÂé·³¶øÇÒÏÔµÃûÄÇôºÃÀí½â¡£
¼òÒª±È½Ïһϰɣ¬DOMÊǽ«XMLÔÚÄÚ´æÖÐÕ¹¿ª³ÉÒ»¸öÊ÷µÄÄ£ÐÍ£¬ÎÒÃÇ¿ÉÒÔ·½±ãµØ·ÃÎÊËüµÄÿ¸ö×ӽڵ㣬¿É¶Á¿Éд¡£µ«ÊÇSAXÄØ£¿ÎÒÃÇÖ»ÄÜͨ¹ýÒ»¸öµ¥ÏòÎı¾Á÷È¥½âÎöXML£¬ÔÚ¹ý³ÌÖÐÓжà¸öʼþ»Øµ÷£¨¿ªÊ¼Ä³¸öÔªËØ´¦Àí¡¢½áÊøÄ³¸öÔªËØ´¦ÀíµÈµÈ£©£¬ËüÊǵ¥ÏòÖ»¶ÁµÄ¡£
ÏÂÃæÎÒÃÇÀ´Ïêϸ˵Ã÷Ò»ÏÂÈçºÎʵÏÖ°É¡£
Ê×ÏÈ£¬ÎÒÃǽ¨Á¢Ò»¸ö½âÎöÆ÷ÅÉÉúÓÚCActive£¬ÓÉËü¸ºÔðÕû¸ö½âÎö¹ý³Ì£¨ÒòΪÕâÊÇÒ»¸öÒì²½²Ù×÷£©¡£
#include <xmlparser.h>
#include <xmlcontenthandler.h>
using namespace Xml;
class MXMLHandlerObserver
...{
public:
virtual void OnParseCompleted( TInt aError ) = 0;
};
class CXMLActiveParser : public CActive ...{
public:
~CXMLActiveParser();
static CXMLActiveParser* NewL(MXMLHandlerObserver& aObserver,MContentHandler& aHandler);
static CXMLActiveParser* NewLC(MXMLHandlerObserver& aObserver,MContentHandler& aHandler);
public:
void StartL(const TDesC& aFileName);
private:
CXMLActiveParser(MXMLHandlerObserver& aObserver,MContentHandler& aHandler);
void ConstructL();
private:
void RunL();
void DoCancel();
TInt RunError(TInt aError);
private:
CParser* iParser;
HBufC8* iBuffer;
RFile iFile;
&n
Ïà¹ØÎĵµ£º
ת×Ô½±ß¹ÂÄñ: http://blog.csdn.net/jbgh608/archive/2007/08/31/1767414.aspx
W3school µÄxsl½Ì³Ì£º http://www.w3school.com.cn/xsl/index.asp
²úÆ·¼¸ÄêǰʹÓÃASP£¬ºóÀ´Éý¼¶µ½.Net 1.1£¬ÔÙÉý¼¶µ½2.0£¬Ò»Ö±¶¼ÓÐÓÃXSLTת»»XMLÉú³ÉÍøÒ³µÄ·½Ê½£¬ÉÔ΢ÕûÀíÏ¡£
XML file:
<?xml version="1.0"& ......
ͨ¹ýxslת»»´óxmlÎļþ
Õ⼸ÌìÔÚ×öÕâ¸ö£¬ÍøÉϵö·½·¨ÎÒ¶¼ÊÔ¹ýÁË£¬»ã×ÜÈçÏÂ
·½·¨Ò»£º
XPathDocument myXPathDoc = new XPathDocument(tbXMLFile.Text);
XslCompiledTransform myXslTrans = new XslCompiledTransform();
myXslTrans.Load(tbXSLFile.Text);
XmlTextWriter myWriter = new XmlTextWrit ......
XmlDocument doc = new XmlDocument();
XmlDeclaration dec = doc.CreateXmlDeclaration("1.0", "GB2312", null);
doc.AppendChild(dec);
//´´½¨Ò»¸ö¸ù½Úµã£¨Ò»¼¶£©
XmlElement root = doc.CreateElement("First");
doc.AppendChild(root);
//´´½¨½Úµã£ ......
µ±ÎÒÃÇÓÃWINDOWSËÑË÷ij°üº¬Ä³ÎÄ×ÖµÄÎļþʱ£¬¿ÉÒÔÔÚ“°üº¬ÎÄ×Ö”´¦ÌîÉÏËÑË÷´Ê¡£µ«ÊÇһЩ²»³£¼ûµÄºó׺ÃûÎļþWINDOWS²»»áËÑË÷£¬È磺£¬.log¡¢.dll¡¢.js¡¢.asp¡¢.xml¡¢.xsl¡¢.hta¡¢.css¡¢.wsh¡¢.cpp¡¢.c »ò .hµÈ¼°ÎÞºó׺ÃûµÄÎļþ¡£¶ÔÓÚÎҵȳÌÐò°®ºÃÕßÀ´ËµÊµÔÚÌ«²»·½±ãÁË£¬ËäÈ»ÓГÎı¾Ìæ»»´óʦ”µÈÈí¼þÄÜ×öÕ ......
Input.xml-----------
<?xml version="1.0" encoding="gb2312"?>
<studentList>
<student sex="man">
<name>wgy</name>
<age>23</age>
<tel>12345678</tel>
</student>
<student sex="female">
<name>lemon</name&g ......