ÍêÉÆ×Ô¼ºµÄhtml parse
˵À´²ÑÀ¢£¬ÎÒ·¢ÏÖ×Ô¼ºÐ´µÄÄǸöhtml parse¹ýÓÚÀíÏ뻯£¬½âÎöxml»¹²î²»¶à£¬Ïë½âÎöÏÖ½ñµÄhtml£¬¹À¼ÆÊDz»´ó¿ÉÄܵģ¬ËùÒÔÎÒ°Ñ´úÂëÖØÐ´ÁËÒ»±é£¬Êý¾Ý½á¹¹¸Ä³ÉË«ÏòÁ´±í£¬ÕâÑù½âÎöËٶȸü¿ì£¬×î´ó³Ì¶ÈµØ¶Ôhtml½øÐÐÈÝ´í´¦Àí£¬ÊÔÑéʱ·¢ÏÖµÄÈ·¿ÉÒÔ½âÎöÆÕͨhtml×Ö·û´®£¬²»ÐèÒªÔÙÑϸñ·ûºÏÄǸöxhtml±ê×¼ÁË¡£¶øÇÒÔÚÁ´Ê½µ÷ÓõĴ«µÝ²ÎÊýÉϲ»ÐèÒªÔÙ´«ÈëdomÀàÐ͵IJÎÊý£¬ÕâÑùдÆðÀ´¾Í¸ü¼Ó¼ò±ãÁË¡£
ºÃÁË£¬·Ï»°²»¶à˵£¬¿´´úÂ룺
#include<iostream>
using namespace std;
class node;
class dom;
class nodecollect{
private:
node *n;
int length;
public:
nodecollect();
~nodecollect();
int getlength();
void add(node *nn);
node* item(int i);
};
class node{
private:
int start;
int len;
char name[20];
public:
char* nodehtml();
char* innerhtml();
char* outerhtml();
char* innertext();
char* getattr(char* str);
char* tagname();
void setname(char *str);
node* getparent();
nodecollect* getchild();
node* getnext();
node* getprevious();
node *next;
node *previous;
void setstart(int i);
void setlen(int i);
int getstart();
int getlen();
dom *d;
};
class dom{
private:
char *text;
node *start;
node *end;
int count;
int parse(char *s);
public:
~dom();
char *gettext();
void load(char *str);
node* getitem(int i);
int getcount();
node *getbyid(char* id);
nodecollect* getbytagname(char *tagname);
};
void dom::load(char* str){
start=0;
end=0;
count=0;
int l=strlen(str);
text=new char[l+1];
strcpy(text,str);
char *t=text;
parse(t);
}
int dom::getcount(){
return count;
}
char *dom::gettext(){
return text;
}
node* dom::getitem(int i){
node* n1=start;
while(i--){
&
Ïà¹ØÎĵµ£º
ǰ̨ <form id="form1" runat="server" enctype="multipart/form-data">
<input type="flie" id="xxx">
</form>
ºǫ́ͨ¹ý HttpPostedFile f = Request.Files["xxx"]
½ÓÊվͿÉÒÔÁË ......
StringBuilder sb = new StringBuilder();
Server.Execute("~/Default2.aspx", new StringWriter(sb));
File.WriteAllText(Server.MapPath("index.htm"), sb.ToString()); ......
»¥¶¯ÐÔÒ»Ö±ÊÇ»¥ÁªÍøµÄÖØµã,ÈÃʹÓÃÕßÓëÍøÕ¾Äܹ»½»»»ÐÅÏ¢,±Ë´Ë¹µÍ¨.±íµ¥Ê¹ÎÒÃÇÄܹ»ÓÐ×éÖ¯µÄ,ʹÓÃͬһ·½Ê½µÄ´ÓʹÓÃÕßÄÇÀïÊÕ¼¯×ÊÁÏ,Òò´ËÔÚÉè¼ÆÍøÕ¾Ê±×ÜÊÇÊôÓÚ"ÈκÎ×´¿ö¶¼ÄÜÄÃÀ´ÓÃ"µÄÄÇÒ»Àà,¾ÙÀýÀ´Ëµ,ÎÒÃÇ·¢ÏÖ´ó¸ÅÓÐ10000ÖÖ±ê¼Ç±íµ¥µÄ²»Í¬·½Ê½.ºÃ°É,»òÐíûÓÐÄÇô¶à,µ«ÊÇÎÒÃÇÈÔÄÜ˼¿¼¼¸ÖÖ×´¿ö,ÈÃʹÓÃÕßÒ×ÓÚʹÓÃ±íµ¥½á¹¹,ͬʱҲ±ãÓ ......
<label> ±êǩΪ input ÔªËØ¶¨Òå±ê×¢£¨±ê¼Ç£©¡£
label ÔªËØ²»»áÏòÓû§³ÊÏÖÈκÎÌØÊâЧ¹û¡£²»¹ý£¬ËüΪÊó±êÓû§¸Ä½øÁË¿ÉÓÃÐÔ¡£Èç¹ûÄúÔÚ label ÔªËØÄÚµã»÷Îı¾£¬¾Í»á´¥·¢´Ë¿Ø¼þ¡£¾ÍÊÇ˵£¬µ±Óû§Ñ¡Ôñ¸Ã±êǩʱ£¬ä¯ÀÀÆ÷¾Í»á×Ô¶¯½«½¹µãתµ½ºÍ±êÇ©Ïà¹ØµÄ±íµ¥¿Ø¼þÉÏ¡£
<label> ±êÇ©µÄ for ÊôÐÔÓ¦µ±ÓëÏà¹ØÔªËØµÄ id ÊôÐÔÏ ......