int loadconfig(FILE *fp,struct xmldoc *ptr) { int s=0; char *epath="config"; char edelim='/'; struct XMLdata *xmldata; struct XMLDBdata *xmldbdata; struct XMLDBtree *tree; char lbuf[255]; xmldata=XMLMake(); xmldbdata=XMLDBMake(xmldata); tree=XMLDBMakeTree(); XMLDBBuildTree(epath,edelim,tree); XMLDBSetTree(xmldbdata,tree); XMLDBSetText(xmldbdata,xmldocbuild,ptr); XMLSetStart(xmldata,XMLDBStart,xmldbdata); XMLSetEnd(xmldata,XMLDBEnd,xmldbdata); while(fgets(lbuf,255,fp) !=NULL) { s=XMLDecode(xmldata,lbuf,strlen(lbuf)); if (s !=0) break; } XMLFree(xmldata); XMLDBFree(xmldbdata); XMLDBFreeTree(tree); return 0; }
int main(int argc,char *argv[]) { FILE *inp; FILE *outp=stdout; char lbuf[256]; int s; struct XMLdata *xmldata; if (argc>1) { inp=fopen(argv[1],"r"); if (inp==NULL) { fprintf(stderr,"File not found.\n"); } } else inp=stdin; xmldata=XMLMake(); XMLSetStart(xmldata,start,outp); XMLSetEnd(xmldata,end,outp); XMLSetText(xmldata,text,outp); while(fgets(lbuf,255,inp) !=NULL) { s=XMLDecode(xmldata,lbuf,strlen(lbuf)); if (s !=0) return -1; } XMLFree(xmldata); return 0; }
int main(int argc,char *argv[]) { FILE *outp=stdout; char lbuf[256]; char *atname[]={"width","height"}; char *atval[]={"100","200"}; struct XMLdata *xmldata; xmldata=XMLMake(); XMLSetStart(xmldata,start,outp); XMLSetEnd(xmldata,end,outp); XMLSetText(xmldata,text,outp); sprintf(lbuf,"dummy contents."); XMLCallStart(xmldata,"table",2,atname,atval,"table",strlen("table")); XMLDecode(xmldata,lbuf,strlen(lbuf)); XMLCallEnd(xmldata,"table","/table",strlen("/table")); XMLFree(xmldata); return 0; }
void loadxml(struct FrameBufferDB *imagedb,struct OptionText *xml) { struct FrameBuffer *img=NULL; struct XMLdata *xmldata=NULL; struct FrameBufferXML xmlimg; FILE *fp; char lbuf[256]; int i; int s=0; if (xml==NULL) return; xmldata=XMLMake(); xmlimg.xml=xmldata; xmlimg.img=&img; XMLSetStart(xmldata,FrameBufferXMLStart,&xmlimg); XMLSetEnd(xmldata,FrameBufferXMLEnd,&xmlimg); for (i=0;i<xml->num;i++) { fp=fopen(xml->txt[i],"r"); if (fp==NULL) continue; while(fgets(lbuf,255,fp) !=NULL) { s=XMLDecode(xmldata,lbuf,strlen(lbuf)); if (s !=0) break; } fclose(fp); if (s !=0) continue; if (img==NULL) continue; FrameBufferDBAdd(imagedb,img); img=NULL; } XMLFree(xmldata); }
int main(int argc,char *argv[]) { int s=0; int arg=0; FILE *fp; char lbuf[256]; struct FrameBuffer *img=NULL; struct XMLdata *xmldata=NULL; struct FrameBufferXML xmlimg; unsigned char help=0; unsigned char option=0; OptionAdd(&opt,"-help",'x',&help); OptionAdd(&opt,"-option",'x',&option); arg=OptionProcess(1,argc,argv,&opt,NULL); if (help==1) { OptionPrintInfo(stdout,hlpstr); exit(0); } if (option==1) { OptionDump(stdout,&opt); exit(0); } xmldata=XMLMake(); xmlimg.xml=xmldata; xmlimg.img=&img; XMLSetStart(xmldata,FrameBufferXMLStart,&xmlimg); XMLSetEnd(xmldata,FrameBufferXMLEnd,&xmlimg); if (arg<argc) { fp=fopen(argv[arg],"r"); if (fp==NULL) { fprintf(stderr,"Error opening file.\n"); exit(-1); } } else fp=stdin; while(fgets(lbuf,255,fp) !=NULL) { s=XMLDecode(xmldata,lbuf,strlen(lbuf)); if (s !=0) break; } if (s !=0) { fprintf(stderr,"Error decoding image.\n"); exit(-1); } if (arg<argc) fclose(fp); if (img !=NULL) FrameBufferSavePPMX(img,stdout); return 0; }
//--------------------------------------------------------------------------- __fastcall TfrmEditReplaceRule::TfrmEditReplaceRule(TComponent* Owner,AnsiString AFrom,AnsiString ATo,AnsiString APosition,AnsiString ACount) : TForm(Owner) { From = XMLDecode(AFrom); To = XMLDecode(ATo); Position = APosition; Count = ACount; txtFrom->Text = From; txtTo->Text = To; txtReplaceCount->Text = Count; cbxPosition->ItemIndex = cbxPosition->Items->IndexOf(Position); if(cbxPosition->ItemIndex < 0) cbxPosition->ItemIndex = 0; btnAscii1->Tag = (int)txtFrom; btnAscii2->Tag = (int)txtTo; cbxPositionChange(NULL); }
void CSvsFile::LoadXML() { UnloadXML(); TiXmlDocument XmlDoc; XmlDoc.SetCondenseWhiteSpace(false); ifstream iXML( m_strFile.c_str() ); if (!iXML) { GenErr("技能配置表转换文件读取错误", m_strFile); } iXML>>XmlDoc; iXML.close(); TiXmlNode* pBody = XmlDoc.FirstChild("body"); TiXmlNode* pTable = pBody->FirstChild("table"); for ( TiXmlNode* pTr = pTable->FirstChild(); pTr; pTr = pTr->NextSibling() ) { TiXmlElement* pElemet = pTr->ToElement(); if (!pElemet) continue; if(pElemet->ValueStr() != "tr") continue; m_vecTR.resize(m_vecTR.size() + 1); TableRow& vecTD = m_vecTR.back(); for ( TiXmlNode* pTd = pTr->FirstChild(); pTd; pTd=pTd->NextSibling() ) { TiXmlElement* pElemet = pTd->ToElement(); if (!pElemet) continue; if(pElemet->ValueStr() != "td") continue; TiXmlNode* pParagraph = pTd->FirstChild(); TiXmlElement* pParaElemet = pParagraph->ToElement(); if(!pParaElemet || pParaElemet->ValueStr() != "p") { GenErr("<td>读取<p>不存在"); } TableData aTD; aTD.m_eTDType = GetTableDataType(pParaElemet->Attribute("t")); if(pParaElemet->FirstChild()) { aTD.m_sTDValue = utf8_to_gbk(pParaElemet->GetText()); XMLDecode(aTD.m_sTDValue); } vecTD.push_back(aTD); } } }
int GrPlotIncludeUser(char *buf,int sze,void *data) { int s=0; struct XMLdata *xmldata; xmldata=(struct XMLdata *)data; if (xmldata==NULL) return -1; s=XMLDecode(xmldata,buf,sze); return s; }
int redirect(char *buf,int sze,void *data) { char lbuf[256]; FILE *xmlfp=NULL; int s=0; struct XMLdata *xmldata; int c,d; xmldata=(struct XMLdata *) data; for (c=0;(c<sze) && (buf[c] !='#');c++); if (c==sze) return 0; for (d=0;(d<sze) && (buf[d] !=' ');d++); if (c==sze) return 0; buf[d]=0; if (strcmp(buf+c,"#include")!=0) return 0; d++; for (c=d;(c<sze) && (buf[c]==' ');c++); if (c==sze) return 0; for (d=c;(d<sze) && (buf[d]!='=');d++); if (d==sze) return 0; buf[d]=0; if (strcmp(buf+c,"file")!=0) return 0; d++; for (c=d;(c<sze) && (buf[c]!='"');c++); c++; for (d=c;(d<sze) && (buf[d]!='"');d++); buf[d]=0; xmlfp=fopen(buf+c,"r"); if (xmlfp==NULL) return 0; while(fgets(lbuf,255,xmlfp) !=NULL) { s=XMLDecode(xmldata,lbuf,strlen(lbuf)); if (s !=0) break; } fclose(xmlfp); return 0; }
int main(int argc,char *argv[]) { char lbuf[256]; int s=0; int arg=0; FILE *fp; struct FrameBuffer *src=NULL; struct FrameBuffer *dst=NULL; struct XMLdata *xmldata=NULL; struct FrameBufferXML xmlimg; unsigned int bgcolor=0; char *bgtxt=NULL; unsigned char alpha=0; unsigned char help=0; unsigned char option=0; OptionAdd(&opt,"-help",'x',&help); OptionAdd(&opt,"-option",'x',&option); OptionAdd(&opt,"bgcol",'t',&bgtxt); OptionAdd(&opt,"alpha",'x',&alpha); arg=OptionProcess(1,argc,argv,&opt,NULL); if (help==1) { OptionPrintInfo(stdout,hlpstr); exit(0); } if (option==1) { OptionDump(stdout,&opt); exit(0); } xmldata=XMLMake(); xmlimg.xml=xmldata; xmlimg.img=&src; XMLSetStart(xmldata,FrameBufferXMLStart,&xmlimg); XMLSetEnd(xmldata,FrameBufferXMLEnd,&xmlimg); if (arg<argc) { fp=fopen(argv[arg],"r"); if (fp==NULL) { fprintf(stderr,"Error opening file.\n"); exit(-1); } } else fp=stdin; while(fgets(lbuf,255,fp) !=NULL) { s=XMLDecode(xmldata,lbuf,strlen(lbuf)); if (s !=0) break; } if (s !=0) { fprintf(stderr,"Error decoding image.\n"); exit(-1); } if (arg<argc) fclose(fp); bgcolor=FrameBufferColor(0x00,0x00,0x00,0x00); if (bgtxt !=NULL) { sscanf(bgtxt,"%x",&bgcolor); } if (src==NULL) { fprintf(stderr,"Error decoding image.\n"); exit(-1); } if (bgcolor !=0) { dst=FrameBufferMake(NULL,src->wdt,src->hgt,24); if (dst==NULL) { fprintf(stderr,"Error creating image.\n"); exit(-1); } FrameBufferClear(dst,bgcolor,0x0f); FrameBufferImage(dst,NULL,src,0x0f,0,0,0,NULL); if (alpha==0) FrameBufferSavePPM(dst,stdout); else FrameBufferSavePPMAlpha(dst,stdout); } else { if (alpha==0) FrameBufferSavePPM(src,stdout); else FrameBufferSavePPMAlpha(src,stdout); } return 0; }
int xmldecode(char *buf,int sze,void *data) { struct XMLdata *xmldata; xmldata=(struct XMLdata *) data; return XMLDecode(xmldata,buf,sze); }
BVRef selectBootVolume( BVRef chain ) { bool filteredChain = false; bool foundPrimary = false; BVRef bvr, bvr1 = 0, bvr2 = 0; if (chain->filtered) filteredChain = true; if (multiboot_partition_set) for ( bvr = chain; bvr; bvr = bvr->next ) if ( bvr->part_no == multiboot_partition && bvr->biosdev == gBIOSDev ) return bvr; /* * Checking "Default Partition" key in system configuration - use format: hd(x,y), the volume UUID or label - * to override the default selection. * We accept only kBVFlagSystemVolume or kBVFlagForeignBoot volumes. */ char *val = XMLDecode(getStringForKey(kDefaultPartitionKey, &bootInfo->bootConfig)); if (val) { for ( bvr = chain; bvr; bvr = bvr->next ) { if (matchVolumeToString(bvr, val, false)) { free(val); return bvr; } } free(val); } /* * Scannig the volume chain backwards and trying to find * a HFS+ volume with valid boot record signature. * If not found any active partition then we will * select this volume as the boot volume. */ for ( bvr = chain; bvr; bvr = bvr->next ) { if ( bvr->flags & kBVFlagPrimary && bvr->biosdev == gBIOSDev ) foundPrimary = true; // zhell -- Undo a regression that was introduced from r491 to 492. // if gBIOSBootVolume is set already, no change is required if ( bvr->flags & (kBVFlagBootable|kBVFlagSystemVolume) && gBIOSBootVolume && (!filteredChain || (filteredChain && bvr->visible)) && bvr->biosdev == gBIOSDev ) bvr2 = bvr; // zhell -- if gBIOSBootVolume is NOT set, we use the "if" statement // from r491, if ( bvr->flags & kBVFlagBootable && ! gBIOSBootVolume && bvr->biosdev == gBIOSDev ) bvr2 = bvr; } /* * Use the standrad method for selecting the boot volume. */ if (foundPrimary) { for ( bvr = chain; bvr; bvr = bvr->next ) { if ( bvr->flags & kBVFlagNativeBoot && bvr->biosdev == gBIOSDev ) bvr1 = bvr; if ( bvr->flags & kBVFlagPrimary && bvr->biosdev == gBIOSDev ) bvr2 = bvr; } } bvr = bvr2 ? bvr2 : bvr1 ? bvr1 : chain; return bvr; }
int main(int argc,char *argv[]) { int s=0,m,n; FILE *fp; FILE *xmlfp; unsigned char help=0; unsigned char option=0; unsigned char ilf=0; char *pathstr=NULL; char *scstr=NULL; int sctype=0; struct XMLDBbuffer *scbuf=NULL; struct XMLdata *xmldata=NULL; struct XMLDBdata *xmldbdata=NULL; struct XMLDBtree *tree=NULL; char *symbol[]={"\"","\\","<",">","&",0}; char *entity[]={""","'","<",">","&",0}; struct Entitydata *entptr; struct OptionText *ignore=NULL; struct OptionText *remove=NULL; char lbuf[255]; char zero[1]={0}; entptr=EntityMake(); EntityAddEntityStringArray(entptr,entity); EntityAddSymbolStringArray(entptr,symbol); OptionAdd(&opt,"-help",'x',&help); OptionAdd(&opt,"-option",'x',&option); OptionAdd(&opt,"ilf",'x',&ilf); OptionAdd(&opt,"i",'a',&ignore); OptionAdd(&opt,"r",'a',&remove); OptionAdd(&opt,"path",'t',&pathstr); OptionAdd(&opt,"script",'t',&scstr); OptionAdd(&opt,"sctype",'i',&sctype); arg=OptionProcess(1,argc,argv,&opt,NULL); if (help==1) { OptionPrintInfo(stdout,hlpstr); exit(0); } if (option==1) { OptionDump(stdout,&opt); exit(0); } if ((argc-arg)<3) { fprintf(stderr,"xmldoc pwd cfgfile xmldata\n"); exit(-1); } xmlfp=fopen(argv[arg+2],"r"); if (xmlfp==NULL) { fprintf(stderr,"file not found.\n"); exit(-1); } chdir(argv[arg]); fp=fopen(argv[arg+1],"r"); loadconfig(fp,&xmldoc); fclose(fp); if (argc>3) xmldoc.compare.data=argv[arg+3]; else xmldoc.compare.data=NULL; xmldoc.compare.check=cmp; xmldoc.map.iflg=-1; if (pathstr !=NULL) { free(xmldoc.tree.path); xmldoc.tree.path=pathstr; } if (scstr !=NULL) { xmldoc.sc.type=sctype; scbuf=XMLDBMakeBuffer(64); XMLDBAddBuffer(scbuf,scstr,strlen(scstr)); XMLDBFreeBuffer(xmldoc.sc.buf); if (sctype==1) { xmldoc.sc.buf=XMLDBCopyBuffer(scbuf); XMLDBAddBuffer(xmldoc.sc.buf,zero,1); } else xmldoc.sc.buf=EntityDecodeBuffer(entptr,scbuf); XMLDBFreeBuffer(scbuf); } xmldata=XMLMake(); xmldbdata=XMLDBMake(xmldata); tree=XMLDBMakeTree(); XMLDBBuildTree(xmldoc.tree.path,xmldoc.tree.delim,tree); XMLDBSetTree(xmldbdata,tree); /* Set the renderer to XMLrender */ XMLDBSetText(xmldbdata,render,&xmldoc); XMLSetStart(xmldata,XMLDBStart,xmldbdata); XMLSetEnd(xmldata,XMLDBEnd,xmldbdata); XMLSetComment(xmldata,redirect,xmldata); xmldoc.script=ScriptMake(); ScriptSetText(xmldoc.script,mapxml,&xmldoc); XMLdocSetText(xmldoc.doc,stream_output,stdout); if (remove !=NULL) { xmldoc.map.remove.num=remove->num; xmldoc.map.remove.txt=remove->txt; } if (ignore !=NULL) { xmldoc.map.ignore.num=ignore->num; xmldoc.map.ignore.txt=ignore->txt; } while(fgets(lbuf,255,xmlfp) !=NULL) { if (ilf) { m=0; for (n=0;(lbuf[n] !=0) && (n<256);n++) { if (lbuf[n]=='\n') continue; lbuf[m]=lbuf[n]; m++; } lbuf[m]=0; } s=XMLDecode(xmldata,lbuf,strlen(lbuf)); if (s !=0) break; } XMLFree(xmldata); XMLDBFree(xmldbdata); XMLDBFreeTree(tree); ScriptFree(xmldoc.script); fclose(xmlfp); fflush(stdout); return 0; }
int main(int argc,char *argv[]) { #ifdef _XLIB_ char *name="rplot"; int xdf=0; int xd=0; struct XwinDisplay *dp; struct XwinWindow *win; char *display_name=NULL; int xdoff=-1; int ydoff=-1; #endif int s=0; int arg=0; FILE *fp; char lbuf[256]; struct FrameBuffer *img=NULL; struct FrameBufferRplot *fbplot=NULL; struct PostScriptRplot *psplot=NULL; struct PostScript *psdata=NULL; struct FrameBufferFontDB *fontdb=NULL; struct FrameBufferDB *imagedb=NULL; struct XMLdata *xmldata=NULL; struct RplotInPlot *rplotin=NULL; struct RplotRplot *rplotrplot=NULL; struct Rplot *rplot=NULL; unsigned char land=0; float xpoff=40,ypoff=40; char *fntdbfname=NULL; unsigned char psflg=0; unsigned char xmlflg=0; unsigned char ppmflg=0; unsigned char ppmxflg=0; unsigned char rflg=0; unsigned char gflg=0; unsigned char pflg=0; unsigned char help=0; unsigned char option=0; struct OptionText *ppmnme=NULL; struct OptionText *ppmxnme=NULL; struct OptionText *xmlnme=NULL; OptionAdd(&opt,"-help",'x',&help); OptionAdd(&opt,"-option",'x',&option); OptionAdd(&opt,"ps",'x',&psflg); OptionAdd(&opt,"ppm",'x',&ppmflg); OptionAdd(&opt,"ppmx",'x',&ppmxflg); OptionAdd(&opt,"xml",'x',&xmlflg); OptionAdd(&opt,"land",'x',&land); OptionAdd(&opt,"xp",'f',&xpoff); OptionAdd(&opt,"yp",'f',&ypoff); OptionAdd(&opt,"ippm",'a',&ppmnme); OptionAdd(&opt,"ippmx",'a',&ppmxnme); OptionAdd(&opt,"ixml",'a',&xmlnme); #ifdef _XLIB_ OptionAdd(&opt,"x",'x',&xd); OptionAdd(&opt,"display",'t',&display_name); OptionAdd(&opt,"xoff",'i',&xdoff); OptionAdd(&opt,"yoff",'i',&ydoff); #endif OptionAdd(&opt,"fdb",'t',&fntdbfname); arg=OptionProcess(1,argc,argv,&opt,NULL); if (help==1) { OptionPrintInfo(stdout,hlpstr); exit(0); } if (option==1) { OptionDump(stdout,&opt); exit(0); } if (psflg) pflg=1; if (xmlflg) gflg=1; if (ppmflg) gflg=1; if (ppmxflg) gflg=1; #ifdef _XLIB_ if (xd !=0) { pflg=0; gflg=1; } #endif if (pflg) gflg=0; if ((pflg==0) && (gflg==0)) rflg=1; if (gflg) { if (fntdbfname==NULL) fntdbfname=getenv("FONTDB"); if (fntdbfname !=NULL) { fp=fopen(fntdbfname,"r"); if (fp !=NULL) { fontdb=FrameBufferFontDBLoad(fp); fclose(fp); } } if (fontdb==NULL) { fprintf(stderr,"Could not load fonts.\n"); exit(-1); } } imagedb=FrameBufferDBMake(); loadxml(imagedb,xmlnme); loadppm(imagedb,ppmnme); loadppmx(imagedb,ppmxnme); xmldata=XMLMake(); rplotin=RplotInMake(xmldata); if (gflg) { fbplot=FrameBufferRplotMake(fontdb,imagedb); FrameBufferRplotSetAll(rplotin,fbplot); } if (pflg) { psdata=PostScriptMake(); PostScriptSetText(psdata,stream,stdout); psplot=PostScriptRplotMake(psdata,imagedb); PostScriptRplotSetAll(rplotin,psplot); psplot->land=land; psplot->xoff=xpoff; psplot->yoff=ypoff; } if (rflg) { rplot=RplotMake(); RplotSetText(rplot,stream,stdout); rplotrplot=RplotRplotMake(rplot,imagedb); RplotRplotSetAll(rplotin,rplotrplot); RplotInSetPass(rplotin,clean_newline,stdout); } XMLSetStart(xmldata,RplotInStart,rplotin); XMLSetEnd(xmldata,RplotInEnd,rplotin); XMLSetText(xmldata,RplotInText,rplotin); if (arg<argc) { fp=fopen(argv[arg],"r"); if (fp==NULL) { fprintf(stderr,"Error opening file.\n"); exit(-1); } } else fp=stdin; while(fgets(lbuf,255,fp) !=NULL) { s=XMLDecode(xmldata,lbuf,strlen(lbuf)); if (s !=0) break; } if (s !=0) { fprintf(stderr,"Error parsing document.\n"); exit(0); } if (arg<argc) fclose(fp); if (fbplot==NULL) exit(0); if (fbplot->img==NULL) { fprintf(stderr,"Nothing to plot.\n"); exit(-1); } img=fbplot->img; #ifdef _XLIB_ if (xd !=0) { dp=XwinOpenDisplay(display_name,&xdf); if (dp==NULL) { fprintf(stderr,"Could not open display.\n"); exit(-1); } if (xdoff==-1) xdoff=(dp->wdt-img->wdt)/2; if (ydoff==-1) ydoff=(dp->hgt-img->hgt)/2; win=XwinMakeWindow(xdoff,ydoff,img->wdt,img->hgt,0, dp,name, name,argv[0],name,argc,argv,&xdf); if (win==NULL) { fprintf(stderr,"Could not create window.\n"); exit(-1); } XwinFrameBufferWindow(img,win); XwinShowWindow(win); XwinDisplayEvent(dp,1,&win,1,NULL); XwinFreeWindow(win); XwinCloseDisplay(dp); } else { if (xmlflg==1) FrameBufferSaveXML(img,stream,stdout); else if (ppmflg==1) FrameBufferSavePPM(img,stdout); else FrameBufferSavePPMX(img,stdout); } #else if (xmlflg==1) FrameBufferSaveXML(img,stream,stdout); else if (ppmflg==1) FrameBufferSavePPM(img,stdout); else FrameBufferSavePPMX(img,stdout); #endif return 0; }
int TagDBDecode(char *buf,int sze,void *data) { struct TagDBdata *tag; tag=(struct TagDBdata *)data; return XMLDecode(tag->ptr,buf,sze); }