elements.c

来自「一个用visual studio C++开发的XML文件解析和生成程序.」· C语言 代码 · 共 47 行

C
47
字号
/* This is simple demonstration of how to use expat. This programreads an XML document from standard input and writes a line with thename of each element to standard output indenting child elements byone tab stop more than their parent element. */#include <stdio.h>#include "xmlparse.h"void startElement(void *userData, const char *name, const char **atts){  int i;  int *depthPtr = userData;  for (i = 0; i < *depthPtr; i++)    putchar('\t');  puts(name);  *depthPtr += 1;}void endElement(void *userData, const char *name){  int *depthPtr = userData;  *depthPtr -= 1;}int main(){  char buf[BUFSIZ];  XML_Parser parser = XML_ParserCreate(NULL);  int done;  int depth = 0;  XML_SetUserData(parser, &depth);  XML_SetElementHandler(parser, startElement, endElement);  do {    size_t len = fread(buf, 1, sizeof(buf), stdin);    done = len < sizeof(buf);    if (!XML_Parse(parser, buf, len, done)) {      fprintf(stderr,	      "%s at line %d\n",	      XML_ErrorString(XML_GetErrorCode(parser)),	      XML_GetCurrentLineNumber(parser));      return 1;    }  } while (!done);  XML_ParserFree(parser);  return 0;}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?