xml Îĵµ½âÎö
XMLÎļþµÄ½âÎö££libxml¿âº¯Êý½âÊÍ
ÕªÒª
LibxmlÊÇÒ»¸öÓÐÃâ·ÑÐí¿ÉµÄÓÃÓÚ´¦ÀíXML¡¢¿ÉÒÔÇáËÉ¿çÔ½¶à¸öƽ̨µÄCÓïÑÔ¿â¡£Õâ¸öÖ¸ÄÏÌṩËüµÄ»ù±¾º¯ÊýµÄÀý×Ó¡£
Ð÷ÂÛ
Libxml ÊÇÒ»¸öʵÏÖ¶Á¡¢´´½¨¼°²Ù×ÝXMLÊý¾Ý¹¦ÄܵÄCÓïÑÔ¿â¡£Õâ¸öÖ¸ÄÏÌṩÀý×Ó´úÂë²¢¸ø³öËü»ù±¾¹¦ÄܵĽâÊÍ¡£ÔÚÕâ¸öÏîÄ¿µÄÖ÷Ò³ÉÏÓÐLibxml¼°¸ü¶à¹ØÓÚËü¿ÉÓõÄ×ÊÁÏ¡£°üº¬ÓÐÍêÕûµÄAPIÎĵµ¡£Õâ¸öÖ¸Äϲ¢²»ÄÜÌæ´úÕâЩÍêÕûµÄÎĵµ£¬µ«ÊDzûÃ÷¹¦ÄÜÐèҪʹÓÿâÀ´Íê³É»ù±¾²Ù×÷¡£
Õâ¸öÖ¸ÄÏ»ùÓÚÒ»¸ö¼òµ¥µÄXMLÓ¦Óã¬ËüʹÓÃÎÒдµÄһƪÎÄÕÂÉú³É£¬Ëü°üº¬ÓÐÔªÊý¾ÝºÍÎÄÕµÄÖ÷Ìå¡£
±¾Ö¸ÄÏÖеÄÀý×Ó´úÂëʾ·¶ÈçºÎ×öµ½£º
• ½âÎöÎĵµ
• È¡µÃÖ¸¶¨ÔªËصÄÎı¾
• Ìí¼ÓÒ»¸öÔªËØ¼°ËüµÄÄÚÈÝ
• Ìí¼ÓÒ»¸öÊôÐÔ
• È¡µÃÒ»¸öÊôÐÔµÄÖµ
Àý×ÓµÄÍêÕû´úÂë°üº¬ÔÚ¸½Â¼ÖÐ
Êý¾ÝÀàÐÍ
Libxml ¶¨ÒåÁËÐí¶àÊý¾ÝÀàÐÍ£¬ÎÒÃǽ«·´¸´Åöµ½ËüÃÇ£¬ËüÒþ²ØÁËÔÓÂÒµÄÀ´Ô´ÒÔÖÂÄã²»±Ø´¦ÀíËü³ý·ÇÄãÓÐÌØ¶¨µÄÐèÒª¡£xmlChar Ìæ´úchar,ʹÓÃUTF-8±àÂëµÄÒ»×Ö½Ú×Ö·û´®¡£Èç¹ûÄãµÄÊý¾ÝʹÓÃÆäËü±àÂ룬Ëü±ØÐ뱻ת»»µ½UTF-8²ÅÄÜʹÓÃlibxmlµÄº¯Êý¡£ÔÚlibxml±àÂëÖ§³ÖWEBÒ³ÃæÓиü¶à¹ØÓÚ±àÂëµÄÓÐÓÃÐÅÏ¢¡£
XmlDoc °üº¬ÓɽâÎöÎĵµ½¨Á¢µÄÊ÷½á¹¹£¬xmlDocPtrÊÇÖ¸ÏòÕâ¸ö½á¹¹µÄÖ¸Õë¡£
xmlNodePtr and xmlNode °üº¬µ¥Ò»½áµãµÄ½á¹¹xmlNodePtrÊÇÖ¸ÏòÕâ¸ö½á¹¹µÄÖ¸Õ룬Ëü±»ÓÃÓÚ±éÀúÎĵµÊ÷¡£
½âÎöÎĵµ
½âÎöÎĵµÊ±½ö½öÐèÒªÎļþÃû²¢Ö»µ÷ÓÃÒ»¸öº¯Êý£¬²¢ÓдíÎó¼ì²é¡£ÍêÕû´úÂ룺¸½Â¼C, KeywordÀý³Ì´úÂë
¢ÙxmlDocPtr doc;
¢ÚxmlNodePtr cur;
¢Ûdoc = xmlParseFile(docname);
¢Üif (doc == NULL ) {
fprintf(stderr,"Document not parsed successfully. \n");
return;
}
¢Ýcur = xmlDocGetRootElement(doc);
¢Þif (cur == NULL) {
fprintf(stderr,"empty document\n");
xmlFreeDoc(doc);
return;
}
¢ßif (xmlStrcmp(cur->name, (const xmlChar *) "story")) {
fprintf(stderr,"document of the wrong type, root node != story");
xmlFreeDoc(doc);
return;
}
¢Ù¶¨Òå½âÎöÎĵµÖ¸Õë¡£
¢Ú¶¨Òå½áµãÖ¸Õë(ÄãÐèÒªËüΪÁËÔÚ¸÷¸ö½áµã¼äÒÆ¶¯)¡£
¢Ü¼ì²é½âÎöÎĵµÊÇ·ñ³É¹¦£¬Èç¹û²»³É¹¦£¬libxml½«Ö¸Ò»¸ö×
Ïà¹ØÎĵµ£º
dom4j ÊÇÒ»ÖÖ½âÎö XML ÎĵµµÄ¿ª·ÅÔ´´úÂë XML ¿ò¼Ü¡£±¾ÎĽéÉÜÈçºÎʹÓðüº¬ÔÚ dom4j ÖеĽâÎöÆ÷´´½¨²¢ÐÞ¸Ä XML Îĵµ¡£
dom4j API °üº¬Ò»¸ö½âÎö XML ÎĵµµÄ¹¤¾ß¡£±¾ÎÄÖн«Ê¹ÓÃÕâ¸ö½âÎöÆ÷´´½¨Ò»¸öʾÀý XML Îĵµ¡£Çåµ¥ 1 ÏÔʾÁËÕâ¸öʾÀý XML Îĵµ£¬catalog.xml¡£
Çåµ¥ 1. ʾÀý XML Îĵµ£¨catalog.xml£©
<?xml version=" ......
ͨ³£Çé¿öÏ£¬Äã¿ÉÒÔ´Ó·þÎñÆ÷ÉÏΪtree¿Ø¼þÈ¡µÃXMLÊý¾Ý £¬ÄãÒ²¿ÉÒÔÔÚ<mx:Tree>TagÀïÖ±½Ó¶¨Òå¸ñʽÁ¼ºÃµÄXMLÊý¾Ý¡£
Äã¿ÉÒÔʹÓÃ<mx:XML>»òÕß<mx:XMLList>TagÔÚmxmlÀﶨÒåXMLÊý¾Ý¡£
Äã¿ÉÒÔ½«XML objectÖ±½Ó×÷Ϊһ¸ö²ã¼¶Êý¾Ý¿Ø¼þµÄdataProvider,however,if the object changes dynamically,ÄãÓ¦¸Ã×öÈçÏ´¦Àí£º ......
5. ÃüÃû¹æÔò£¨²»ÄܰüÀ¨ xml£¬¿Õ¸ñ£¬¼âÀ¨ºÅ£¬µÈÌØÊâ·ûºÅ£¬²»ÄÜÊý×Ö¿ªÍ·£©
6. ¿ÉÒÔ×Ô´øÊôÐÔ¡£ÊôÐÔÖµÓÓ”±êʾ
7. ×¢ÊÍ<!--×¢Ê͵ÄÄÚÈÝ-->
8. Èç¹ûÒªÏÔÊ¾ÌØÊâ·ûºÅ¿ÉÓÃ<![CDATA[ ÕâÀïÐ´ÌØÊâ·ûºÅ ]]>
´´½¨
var xml:XML=<shuiGuo>
& ......
import java.io.File;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Set;
import java.util.Iterator;
import org.dom4j.Document;
import org.dom4j.DocumentException;
import org.dom4j.Element;
import org.dom4j.io.SAXReader;
public class ReadSetting {
......
import java.awt.Image;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import javax.imageio.ImageIO;
public class createXml
{
public static boolean writeXml(String path,String dir,String wpath,String wname)
{
File[] files = ReaderListFiles(path);
boo ......