采用Expat检查XML文档是否格式良好
来源:互联网 发布:单位的网络不让上b站 编辑:程序博客网 时间:2024/04/30 05:10
采用Expat检查XML文档是否格式良好
这里简单介绍一下如何用Expat解析器来检查XML文档是否格式良好。Expat是一个用纯C语言写的XML解析器。具有XML解析器一般的功能,可以检查XML格式是否良好(well-formed),但不支持schema校验。
为了简便,这里就直接将要检查的XML文档放入缓存中。如需要可以从文件读取或者来自其他地方。
编写自己的Expat应用程序前,需要先通过源代码构建出libexpat.lib和libexpat.dll这两个文件(windows环境)。然后在应用程序中加入对该库的链接。
下面的程序具有检查xml文档是否格式良好的功能,如果检查到格式非良好,程序会准确报告出错的位置(行号和列号)以及错误信息。
#include<stdio.h>
#include<string.h>
#include<expat.h>
#pragma comment(lib,"libexpat.lib")
#define BUFFSIZE 8192
charBuff[BUFFSIZE] ="<book><name>XML Tutorial</name><price>27</price></book>";
int main()
{
int done = 0;
XML_Parserparser =XML_ParserCreate(NULL);
if (NULL ==parser)
{
printf("Couldn't allocate memory for parser/n");
return -1;
}
if (XML_Parse(parser,Buff, strlen(Buff),done) == XML_STATUS_ERROR) {
printf("Parse error at line %d, Column %d, /n%s/n",
XML_GetCurrentLineNumber(parser),
XML_GetCurrentColumnNumber(parser),
XML_ErrorString(XML_GetErrorCode(parser)));
return -1;
}
return 0;
}
代码非常简单,这里不多作解释。可以故意将Buff中的xml数据改为格式非良好来查看程序的反应。
- 采用Expat检查XML文档是否格式良好
- 采用Expat检查XML文档是否格式良好
- 格式良好的XML文档( well formed)
- 检查xml格式是否正确
- 格式良好的XML文档 (well formed XML)
- 创建格式良好的XML文档(上篇)
- 创建格式良好的XML文档(下篇)
- 形式良好的 XML 文档
- xml expat
- 检查xml写的格式是否正确的方法
- xml约束模式的作用。简述什么是格式良好但无效的xml文档,什么是有效的
- XML 解析错误:非良好格式
- 读取一个格式良好的XML文档(只能包含标记和内容),并按层次编号并输出。
- 检查字符串是否日期格式
- expat介绍文档翻译
- The Expat XML Parser
- Linux XML expat 笔记
- EXPAT(XML解析库)
- 常用的sql语句
- 关于2.00-1.90结果不为0.10的解析
- 项目管理过程与知识领域(PMP第五版 )
- RandomAccessFile 简介
- 关于滤波电容、去耦电容、旁路电容作用
- 采用Expat检查XML文档是否格式良好
- camera驱动 for android
- eclipse 不显示svn 信息解决方案
- <init>与<clinit>的区别
- 闭散列方法与开散列方法
- C# 实现bitmap
- iOS之 UIScrollView 滚动视图的使用
- NSString的比较
- json