linux c语言xml解析xml,纯C语言XML解析器

linux c语言xml解析xml,纯C语言XML解析器精短高效的XML解析器,纯C单一程序,应用于银行的国税库行横向联网接口系统中,稳定可靠,运行速度飞快,非相应的JAVA程序可比.以下为大部分源码:/*Copyright(c)2005wzs*/#include#include#include#include#include#include”xmlparse.h”/*xml得到节点名值,返回:1节点标识名开头,2节点标…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

精短高效的XML解析器,纯C单一程序,应用于银行的国税库行横向联网接口系统中,稳定可靠,运行速度飞快,非相应的JAVA程序可比.以下为大部分源码:

/* Copyright (c) 2005 wzs */

#include

#include

#include

#include

#include

#include “xmlparse.h”

/*xml得到节点名值, 返回: 1节点标识名开头, 2节点标识名结尾, 3 注释 , 4元素数据 <=0有错误 */

#define XVAL_NBEGIN 1

#define XVAL_NEND 2

#define XVAL_NOTE 3

#define XVAL_DATA 4

#define XVAL_TAG 5 /* 空标志 */

#define XVAL_NONE 0

#define XVAL_ERROR -1

static int isSpace(int c) /* 是空否 */

{

switch (c) {

case 0x20:

case 0xD:

case 0xA:

case 0x9:

return 1;

}

return 0;

}

static int isNameTChar(int c) /* 有效的名称前导符 */

{

return (c>=’A’ && c<=’Z’) || (c>=’a’ && c<=’z’) || (c==’_’) ;

}

int EqXString (XSTRING *dxs, XSTRING *sxs ) /* X字串赋值 */

{

dxs->text = sxs->text ;

dxs->len = sxs->len ;

return 0;

}

int EqXNode (XNODE *dx, XNODE *sx ) /* X节点赋值 */

{

EqXString ( &(dx->name), &(sx->name) );

dx->index = sx->index ;

dx->parentNode = sx->parentNode ;

dx->level = sx->level ;

dx->tagCount = sx->tagCount ;

EqXString ( &(dx->data), &(sx->data) );

return 0;

}

/* 增加同级节点: */

XNODE *XAddNode(XTREE *xTree , XSTRING *name)

{

if (xTree->curNode->parentNode == NULL || xTree->nodeCount >= xTree->nodeMaxCount ) return NULL ;

(xTree->nodeCount) ++ ;

xTree->preNode = xTree->curNode ;

xTree->curNode = & (xTree->nodeList[ xTree->nodeCount -1 ] ) ;

xTree->curNode->index = xTree->nodeCount -1 ;

EqXString (&(xTree->curNode->name), name);

xTree->curNode->parentNode = xTree->preNode->parentNode ;

xTree->curNode->lev

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/157849.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • vscode的使用

    vscode的使用一、基本使用1、生成Html模板先把右下角换成然后在空白页面 输入 ! 按下Tab即可。2、vscoe自动保存自动保存简直不要太爽 File–> Auto Save 即可。 可以在下面修改秒数保存。3、颜色主题以及字体或者直接快捷键 ctrl+k按完直接ctrl+t即可。上下选择合适主题。修改字体大小即可。4、修改删除快捷键…

    2022年6月13日
    53
  • windows端安装eclipse导入maven工程的方法

    windows端安装eclipse导入maven工程的方法windows端安装eclipse导入maven工程的方法第一:下载并安装eclipse。下载地址:http://www.eclipse.org/downloads/download.php?file=/technology/epp/downloads/release/mars/R/eclipse-jee-mars-R-macosx-cocoa-x86_64.tar.gz第二:jdk下载并安装。下…

    2022年5月31日
    33
  • STM32 + UCOSII 操作系统(简单讲解)「建议收藏」

    STM32 + UCOSII 操作系统(简单讲解)「建议收藏」前言这是我将UCOSII操作系统移植在STM32单片机上后进行UCOSII操作系统学习的一些笔记与理解,此文最后会附上我自己在UCOSII操作系统下使用STM32写的ESP8266+onenet+http协议的程序链接,可以作为参考,如果文中有不当的地方,还请各位大佬加以中指正,我一定会虚心求教。参考资料:正点原子RTOS操作系统讲解,参考的文章:(53条消息)STM32学习笔记一一UCOSII(1)_霁风AI-CSDN博客_ucosii1.UCOSII操作系统的简介前台后台系统相信大家都

    2022年6月4日
    35
  • 粗斜体字母_LaTeX语法

    粗斜体字母_LaTeX语法写文章的小伙伴应该知道,在文章中,变量是需要斜体的,那么怎么才是斜体呢 首先,在LATEX中,强调可以以斜体形式展现出来。那么强调命令是如何体现的呢: 语法:\emph{内容} 打开Winedit:,输入以下命令: \documentclass{article}\begin{document}Smallisbeautiful.\emph{Smallisbeautiful.}\end{document} 保存为TEX文件..

    2025年7月31日
    3
  • 博科300 光纤交换机的配置

    博科300 光纤交换机的配置博科300光纤交换机的配置

    2022年5月11日
    70
  • 华为C++面试题(产品经理逻辑面试题)

    1.static有什么用途?(请至少说明两种)   1)在函数体,一个被声明为静态的变量在这一函数被调用过程中维持其值不变。   2)在模块内(但在函数体外),一个被声明为静态的变量可以被模块内所用函数访问,但不能被模块外其它函数访问。它是一个本地的全局变量。   3)在模块内,一个被声明为静态的函数只可被这一模块内的其它函数调用。那就是,这个函数被限制在声明它的模块的本地范

    2022年4月11日
    54

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号