TinyXML£ºÒ»¸öÓÅÐãµÄC++ XML½âÎöÆ÷
TinyXML£ºÒ»¸öÓÅÐãµÄC++ XML½âÎöÆ÷
¶ÁÈ¡ºÍÉèÖÃxmlÅäÖÃÎļþÊÇ×î³£ÓõIJÙ×÷£¬ÊÔÓÃÁ˼¸¸öC++µÄXML½âÎöÆ÷£¬¸öÈ˸оõTinyXMLÊÇʹÓÃÆðÀ´×îÊæ·þµÄ£¬ÒòΪËüµÄAPI½Ó¿ÚºÍJavaµÄÊ®·ÖÀàËÆ£¬ÃæÏò¶ÔÏóÐԺܺá£
TinyXMLÊÇÒ»¸ö¿ªÔ´µÄ½âÎöXMLµÄ½âÎö¿â£¬Äܹ»ÓÃÓÚC++£¬Äܹ»ÔÚWindows»òLinuxÖбàÒë¡£Õâ¸ö½âÎö¿âµÄÄ£ÐÍͨ¹ý½âÎöXMLÎļþ£¬È»ºóÔÚÄÚ´æÖÐÉú³ÉDOMÄ£ÐÍ£¬´Ó¶øÈÃÎÒÃǺܷ½±ãµÄ±éÀúÕâ¿ÃXMLÊ÷¡£
DOMÄ£Ðͼ´Îĵµ¶ÔÏóÄ£ÐÍ£¬Êǽ«Õû¸öÎĵµ·Ö³É¶à¸öÔªËØ£¨ÈçÊé¡¢Õ¡¢½Ú¡¢¶ÎµÈ£©£¬²¢ÀûÓÃÊ÷Ðͽṹ±íʾÕâЩԪËØÖ®¼äµÄ˳Ðò¹ØϵÒÔ¼°Ç¶Ì×°üº¬¹Øϵ¡£
ÈçÏÂÊÇÒ»¸öXMLƬ¶Î£º
<Persons>
<Person ID="1">
<name>ÖÜÐÇÐÇ</name>
<age>20</age>
</Person>
<Person ID="2">
<name>°×¾§¾§</name>
<age>18</age>
</Person>
</Persons>
ÔÚTinyXMLÖУ¬¸ù¾ÝXMLµÄ¸÷ÖÖÔªËØÀ´¶¨ÒåÁËһЩÀࣺ
TiXmlBase£ºÕû¸öTinyXMLÄ£Ð͵ĻùÀà¡£
TiXmlAttribute£º¶ÔÓ¦ÓÚXMLÖеÄÔªËصÄÊôÐÔ¡£
TiXmlNode£º¶ÔÓ¦ÓÚDOM½á¹¹ÖеĽڵ㡣
TiXmlComment£º¶ÔÓ¦ÓÚXMLÖеÄ×¢ÊÍ
TiXmlDeclaration£º¶ÔÓ¦ÓÚXMLÖеÄÉêÃ÷²¿·Ö£¬¼´<£¿versiong="1.0" ?>¡£
TiXmlDocument£º¶ÔÓ¦ÓÚXMLµÄÕû¸öÎĵµ¡£
TiXmlElement£º¶ÔÓ¦ÓÚXMLµÄÔªËØ¡£
TiXmlText£º¶ÔÓ¦ÓÚXMLµÄÎÄ×Ö²¿·Ö
TiXmlUnknown£º¶ÔÓ¦ÓÚXMLµÄδ֪²¿·Ö¡£
TiXmlHandler£º¶¨ÒåÁËÕë¶ÔXMLµÄһЩ²Ù×÷¡£
TinyXMLÊǸö½âÎö¿â£¬Ö÷ÒªÓÉDOMÄ£ÐÍÀࣨTiXmlBase¡¢TiXmlNode¡¢TiXmlAttribute¡¢TiXmlComment¡¢TiXmlDeclaration¡¢TiXmlElement¡¢TiXmlText¡¢TiXmlUnknown£©ºÍ²Ù×÷ÀࣨTiXmlHandler£©¹¹³É¡£ËüÓÉÁ½¸öÍ·Îļþ£¨.hÎļþ£©ºÍËĸöCPPÎļþ£¨.cppÎļþ£©¹¹³É£¬ÓõÄʱºò£¬Ö»Òª½«£¨tinyxml.h¡¢
Ïà¹ØÎĵµ£º
Main.cpp (Win/*nix)
#include "FlexSecurityBox.h"
int main(int argc, char ** argv) {
char * address;
short port;
if (argc == 2)
{
address = "0.0.0.0";
port = atoi(argv[1]);
} else if (argc == 3)
{
address = argv[1];
port = atoi(argv[2]);
} else
{
printf("Y ......
Javaͨ¹ýXML SchemaУÑéXML
XMLµÄУÑéÔÚXML´¦ÀíÖзdz£³£¼û£¬Èç¹ûûÓÐÓÐЧµÄ°ì·¨À´Ð£ÑéXMLµÄºÏ·¨ÐÔ£¬ÍùÍù»áµ¼ÖºܶàÎÊÌâ¡£
XMLµÄУÑéÊÇͨ¹ýXML Schema£¨XSD£© »òDTDÎļþµÄÓï·¨¹æ·¶À´Ð£ÑéµÄ¡£DTDÏÖÔÚÔ½À´Ô½²»ÊÜ»¶ÓÁË£¬ÔÚ´ËÑ¡ÓÃXSDÀ´Ð£Ñé¡£
JavaУÑéXMLÊǼþºÍ³¶µµÄÊÂÇ飬ÒòΪSunµÄXMLÏà¹ØÈí¼þ°ü» ......
¶¯Ì¬¼ÓÔØDLLÐèҪʹÓÃWindows APIº¯Êý£ºLoadLibrary¡¢GetProcAddressÒÔ¼°FreeLibrary¡£ÎÒÃÇ¿ÉÒÔʹÓÃDllImportÔÚC#ÖÐʹÓÃÕâÈý¸öº¯Êý¡£
[DllImport("Kernel32")]
public static extern int GetProcAddress(int handle, String funcname);
[DllImport("Kernel32")]
public static extern int L ......
ÎÒ֮ǰÊÇÒ»¸öC³ÌÐòÔ±£¬¶øÇÒÊǸöWindowsµÄ³ÌÐòÔ±£¬ÔÚwindowsÏÂʹÓÃVC6.0/VS2005µÈmicrosoftµÄɵ¹Ïʽ¹¤¾ß¹¤×÷£¬
¶ÔÓÚÄǸövc 6.0/vs2005µÄ¿ì½Ý²Ù×÷£¬debug²Ù×÷ÊÇÄÇôµÄÊìϤ£¬¿ÉÒÔ˵vc
6.0/vs2005ÊÇwindowÏ¿ª·¢c/c++×îºÃÓõŤ¾ßÁË£¬¿ÉÒԲ鿴µ÷ÓöÑÕ»£¬ÄÚ´æ±ä»¯Çé¿ö£¬±äÁ¿Öµ£¬ÁíÍâ°²×° visual assist
xºóÈÃVC¿´ÆðÀ´ÊÇÄÇô ......
java´úÂë
package com.xml.action;
import com.opensymphony.xwork2.ActionContext;
import com.opensymphony.xwork2.ActionSupport;
public class XMLAction extends ActionSupport{
private static final long serialVersionUID = 1L;
private String username;
private String mobile;
public void setUs ......