ÒÑÖªÓÐÒ»¸öXMLÎļþ£¨bookstore.xml£©ÈçÏ£º
<?xml version="1.0" encoding="gb2312"?>
<bookstore>
<book genre="fantasy" ISBN="2-3631-4">
<title>Oberon's Legacy</title>
<author>Corets, Eva</author>
<price>5.95</price>
</book>
</bookstore>
1¡¢Íù<bookstore>½ÚµãÖвåÈëÒ»¸ö<book>½Úµã£º
XmlDocument xmlDoc=new XmlDocument();
xmlDoc.Load("bookstore.xml");
XmlNode root=xmlDoc.SelectSingleNode("bookstore");//²éÕÒ<bookstore>
& ......
ÒÑÖªÓÐÒ»¸öXMLÎļþ£¨bookstore.xml£©ÈçÏ£º
<?xml version="1.0" encoding="gb2312"?>
<bookstore>
<book genre="fantasy" ISBN="2-3631-4">
<title>Oberon's Legacy</title>
<author>Corets, Eva</author>
<price>5.95</price>
</book>
</bookstore>
1¡¢Íù<bookstore>½ÚµãÖвåÈëÒ»¸ö<book>½Úµã£º
XmlDocument xmlDoc=new XmlDocument();
xmlDoc.Load("bookstore.xml");
XmlNode root=xmlDoc.SelectSingleNode("bookstore");//²éÕÒ<bookstore>
& ......
ÐòÁл¯µÄ¸ÅÄî
ÐòÁл¯ÊÇÖ¸Ò»¸ö¶ÔÏóµÄʵÀý¿ÉÒÔ±»±£´æ£¬±£´æ³ÉÒ»¸ö¶þ½øÖÆ´®£¬µ±È»£¬Ò»µ©±»±£´æ³É¶þ½øÖÆ´®£¬ÄÇôҲ¿ÉÒÔ±£´æ³ÉÎı¾´®ÁË¡£
±ÈÈ磬һ¸ö¼ÆÊýÆ÷£¬ÊýֵΪ2£¬ÎÒÃÇ¿ÉÒÔÓÃ×Ö·û´®“2”±íʾ¡£
Èç¹ûÓиö¶ÔÏ󣬽Ð×öconnter£¬µ±Ç°ÖµÎª2£¬ÄÇô¿ÉÒÔÐòÁл¯³É“2”£¬·´ÏòµÄ£¬Ò²¿ÉÒÔ´Ó“2”µÃµ½ÖµÎª2µÄ¼ÆÊýÆ÷ʵÀý¡£
ÕâÑù£¬¹Ø»úʱÐòÁл¯Ëü£¬¿ª»úʱ·´ÐòÁл¯Ëü£¬Ã¿´Î¿ª»ú¶¼ÊÇÑÓÐøµÄ¡£²»»á¶¼ÊÇ´ÓÍ·¿ªÊ¼¡£
ÐòÁл¯¸ÅÄîµÄÌá³öºÍʵÏÖ£¬¿ÉÒÔʹÎÒÃǵÄÓ¦ÓóÌÐòµÄÉèÖÃÐÅÏ¢±£´æºÍ¶ÁÈ¡¸ü¼Ó·½±ã¡£
ÐòÁл¯ÓкܶàºÃ´¦£¬±ÈÈ磬ÔÚһ̨»úÆ÷ÉϲúÉúÒ»¸öʵÀý£¬³õʼ»¯Íê±Ï£¬È»ºó¿ÉÒÔÐòÁл¯£¬Í¨¹ýÍøÂç´«Ë͵½Áíһ̨»úÆ÷£¬È»ºó·´ÐòÁл¯£¬µÃµ½¶ÔÏóʵÀý£¬Ö®ºóÔÙÖ´ÐÐijЩҵÎñÂß¼£¬µÃµ½½á¹û£¬ÔÙÐòÁл¯£¬·µ»ØµÚһ̨»úÆ÷£¬µÚһ̨»úÆ÷µÃµ½¶ÔÏóʵÀý£¬µÃµ½½á¹û¡£
Õâ¸öÀý×ÓÊÇĿǰ±È½ÏÏȽøµÄ“ÖÇÄÜ´úÀ픵ÄÔÀí¡£
µ±Ç°±È½ÏÈÈ»ðµÄweb servicesʹÓÃsoapÐÒ飬soapÐÒéÒ²ÊÇÒÔ¶ÔÏóµÄ¿ÉÐòÁл¯Îª»ù´¡µÄ¡£
Ò» ¸ÅÊö
.NET FrameworkΪ´¦ÀíXMLÊý¾ÝÌṩÁËÐí¶à²»Í¬µÄÀà¿â¡£XmlDocumentÀàÄÜÈÃÄãÏñ´¦ÀíÎļþÒ»Ñù´¦ÀíxmlÊý¾Ý£¬¶øXmlReader¡¢XmlWriterºÍËüÃǵÄÅÉÉúÀàʹÄãÄܹ»½«xmlÊ ......
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Xml;
namespace WebApplication2
{
/// <summary>
/// XMLHelper XMLÎĵµ²Ù×÷¹ÜÀíÆ÷
/// </summary>
public class XMLHelper
{
public XMLHelper()
{
//
// TODO: ÔÚ´Ë´¦Ìí¼Ó¹¹Ô캯ÊýÂß¼
//
}
#region XMLÎĵµ½Úµã²éѯºÍ¶ÁÈ¡
///&n ......
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Xml;
namespace WebApplication2
{
/// <summary>
/// XMLHelper XMLÎĵµ²Ù×÷¹ÜÀíÆ÷
/// </summary>
public class XMLHelper
{
public XMLHelper()
{
//
// TODO: ÔÚ´Ë´¦Ìí¼Ó¹¹Ô캯ÊýÂß¼
//
}
#region XMLÎĵµ½Úµã²éѯºÍ¶ÁÈ¡
///&n ......
1.
ÓÃXML½áµãµÄÊôÐÔÖµ²éÕÒÏàͬ½áµãµÄÆäËüÊôÐÔÖµ[C#]
ʵÏÖ¹¦ÄÜ:
ÓÃXML½áµãµÄÊôÐÔÖµ²éÕÒÏàͬ½áµãµÄÆäËüÊôÐÔÖµ,¼´ÈçϵÄxml,ÊäÈëÒ»¸ö001,ÄܵóöFistTag_ValueÕâ¸öÖµÀ´.
1)Ê×ÏÈ,°ÑÏÂÃæµÄxmlÎĵµ´æÔÚDÅÌĿ¼ÏÂ,ÃüÃûΪ:Test.xml,xmlÎĵµÄÚÈÝÈçÏÂ
//-------------------------------------xmlÎĵµ·Ö¸îÏß----------------------------------------------
<?xml version="1.0" encoding="utf-8"?>
<HeadData>
<Item>
<SystemType>0</SystemType>
<tag Entrytag="001" NodeName="FistTag_Value">
<FistNode>0001</FistNode>
<SecondNode>0001</SecondNode>
</tag>
</Item>
<Item>
<SystemType>0</SystemType>
<tag Entrytag="002" NodeName="SecondTag_Value">
......
¹ØÓÚCµÄ˼¿¼
Cong Wang
May, 2006
Network Engineering Department
Institute of Post and Telecommunications, Xi'an, P.R.China
ÒýÑÔ
CÓïÑÔ½áºÏÁË»ã±àµÄËùÓÐÍþÁ¦£¬ËüµÄ³éÏó³Ì¶ÈÅöÇɼÈÂú×ãÁ˳ÌÐòÔ±µÄÒªÇó, ÓÖÈÝÒ×ʵÏÖ¡£ÒòÆä¶ÀÌØµÄÁé»îÐÔºÍÇ¿´óµÄ¿ÉÒÆÖ²ÐÔ£¬ÏµÍ³³ÌÐòÔ±ºÍºÚ¿ÍÃǸüÊǶÔËüÖÓ°®Óмӡ£ÎÞÒÉ£¬CÓïÑÔ»ñµÃÁË¿ÕǰµÄ³É¹¦£¬ÔÚijÖ̶ֳÈÉÏÉõÖÁ±ÈUNIX»¹Òª³É¹¦¡£È»¶ø£¬“CÓïÑÔ¾ÍÏñÒ»°Ñ¿Ìµ¶£¬¼òµ¥£¬·æÀû£¬²¢ÇÒÔÚ¼¼Ê¦ÊÖÖзdz£ÓÐÓ᣺ÍÈκηæÀûµÄ¹¤¾ßÒ»Ñù£¬C»áÉ˵½ÄÇЩ²»ÄܼÝÔ¦ËüµÄÈË¡£” [8]CÓïÑÔÁé»îÐԵı³ºó£¬ÓÐןܶàµÄҪעÒâºÍ±ÜÃâµÄµØ·½£¬Ò»²»Ð¡ÐÄÄã¾Í»áÏÝÈëbugµÄÄà̶¡£ËùÒÔÒ²ÎÞ¹ÖºõÖ»ÓÐCÓïÑÔ²ÅÓÐÏñ¡¶The C Puzzle Book¡·£¬¡¶Obfuscated C and Other Mysteries¡·£¬¡¶C Traps and Pitfalls¡·Ö®ÀàµÄÊé¡£ÏÂÃæµÄÎÄÕ²»ÊǶÔÄÇЩÊéÖÐÌáµ½µÄÎÊÌâµÄÖØ¸´£¬¶øÊÇ¶ÔÆäËüһЩϸСµÄµØ·½ºÍ²¿·ÖC¿âº¯Êý½øÐÐÌÖÂÛ¡£ ´ó²¿·Ö¶¼»á¼¯Öе½±ê×¼CÉÏ£¬²Î¿¼µÄ±ê×¼ÊÇISO C99£¬Ò»Ð¡²¿·Ö¿ÉÄÜ»áÉæ¼°µ½¾ßÌåÆ½Ì¨¡£
Ò». sizeofÓëreturn
sizeof²»ÊǺ¯Êý£¬¶øÊÇÒ»Ôª²Ù×÷·û£¬Ã»±ØÒª¸øËüºóÃæµÄ±í´ïʽ¼ÓÀ¨ºÅ¡£µ«Èç¹û¼ÆËãµÄÊÇÒ»ÖÖÀàÐ͵ĴóС£¬s ......
¸Õ´ÓÍøÉÏ¿´µ½cºÍjava»ì±àµÄÎÄÕ£¬¾Íؽ²»¿É´ýµÄ³¢ÊÔÁËһϡ£ºÇºÇ£¬Ð§¹û»¹ÊǺܺõġ£ÏÂÃæ½«×Ô¼º³É¹ûÕ³Ìù³öÀ´
£¨×ªÔØÓÚhttp://www.zxbc.cn/html/20070518/19986.html£©¡£ÊµÑéÖ®ºó¿ÉÒÔͨ¹ý¡£
1javaÖе÷ÓÃcÓïÑÔ
Ê×ÏȱàдMain.java
public class Main
{
public native static int getStrNum(byte str[], int strLen);
}
ÔÚÃüÁîÐÐÖУ¬Ê¹ÓÃÈçÏÂÃüÁî±àÒ룺
javac Main.java
ÏÂÃæµÄÃüÁÉú³ÉMain.hÍ·Îļþ
javah Main
´ò¿ªvs2008£¬ н¨¹¤³ÌMakeDll£¨win32 console application£©£¬ÉèÖÃÏîÄ¿ÊôÐÔÈçÏ£º
ÔÚproject-¡·MakeDll Properties-¡·ÔÚGeneralÑ¡ÏÉÏ£¬Ñ¡ÔñÉú³ÉdllÎļþ¡£
ͬʱÐèÒªÔÚÏîÄ¿µÄc++ÏÂgeneralϵÄAdditional include directoryϼÓÔØjdk°²×°Ä¿Â¼ÏµÄincludeÎļþ¼ÐºÍ¸ÃÎļþ¼ÐϵÄwin32
×ÓĿ¼¡£
½«µÚÒ»²½Éú³ÉµÄMain.hÎļþ¼ÙÈçµ½¹¤³ÌÖУ¬Í¬Ê±Ð½¨Ò»¸ömain.cppÎļþ£¬ÔÚÆäÖмÙÈçÈçÏ´úÂ룺
#include "Main.h"
#include <string.h>
JNIEXPORT jint JNICALL Java_Main_getStrNum (JNIEnv *env, jclass cls, jbyteArray str, jint strLen)
{
jbyte *buffer = (*env).GetByteA ......
¸Õ´ÓÍøÉÏ¿´µ½cºÍjava»ì±àµÄÎÄÕ£¬¾Íؽ²»¿É´ýµÄ³¢ÊÔÁËһϡ£ºÇºÇ£¬Ð§¹û»¹ÊǺܺõġ£ÏÂÃæ½«×Ô¼º³É¹ûÕ³Ìù³öÀ´
£¨×ªÔØÓÚhttp://www.zxbc.cn/html/20070518/19986.html£©¡£ÊµÑéÖ®ºó¿ÉÒÔͨ¹ý¡£
1javaÖе÷ÓÃcÓïÑÔ
Ê×ÏȱàдMain.java
public class Main
{
public native static int getStrNum(byte str[], int strLen);
}
ÔÚÃüÁîÐÐÖУ¬Ê¹ÓÃÈçÏÂÃüÁî±àÒ룺
javac Main.java
ÏÂÃæµÄÃüÁÉú³ÉMain.hÍ·Îļþ
javah Main
´ò¿ªvs2008£¬ н¨¹¤³ÌMakeDll£¨win32 console application£©£¬ÉèÖÃÏîÄ¿ÊôÐÔÈçÏ£º
ÔÚproject-¡·MakeDll Properties-¡·ÔÚGeneralÑ¡ÏÉÏ£¬Ñ¡ÔñÉú³ÉdllÎļþ¡£
ͬʱÐèÒªÔÚÏîÄ¿µÄc++ÏÂgeneralϵÄAdditional include directoryϼÓÔØjdk°²×°Ä¿Â¼ÏµÄincludeÎļþ¼ÐºÍ¸ÃÎļþ¼ÐϵÄwin32
×ÓĿ¼¡£
½«µÚÒ»²½Éú³ÉµÄMain.hÎļþ¼ÙÈçµ½¹¤³ÌÖУ¬Í¬Ê±Ð½¨Ò»¸ömain.cppÎļþ£¬ÔÚÆäÖмÙÈçÈçÏ´úÂ룺
#include "Main.h"
#include <string.h>
JNIEXPORT jint JNICALL Java_Main_getStrNum (JNIEnv *env, jclass cls, jbyteArray str, jint strLen)
{
jbyte *buffer = (*env).GetByteA ......