微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

xml 转xsd->xsd转c,c++

fromhttp://www.jb51.cc/article/p-cficerij-bcg.html

Trang 是一种命令行的可以XML生成XSD的工具,生成XML文件对应的XSD文件只需要3个简单的步骤:

第一步 下载Trang

http://www.thaiopensource.com/relaxng/trang.html上下载trang-version.zip

第二步 解压zip

将trang-version.zip解压到某个目录,比如d:\trang

第三步 生成XSD

假设在 d:\ 下有一个xml文件 person.xml

[html] view plain copy
  1. <?xmlversion="1.0"encoding="UTF-8"standalone="yes"?>
  2. <personNAME="ZhangSan">
  3. addresscountry="China">
  4. state>beijing</addressJob>ITperson>

打开windows命令行,将当前位置变更到 d:\

输入

java -jar %TrangHome%\trang.jar person.xml person.xsd

( %TrangHome%表示Trang解压目录,trang.jar 接受两个参数,第一个为源文件,第二个为目标文件)

ok!你可以看到在 d:\ 下就生成了 person.xsd 文件

copy
    xmlversion="1.0"encoding="UTF-8"xs:schemaxmlns:xs="http://www.w3.org/2001/XMLSchema"elementFormDefault="qualified"xs:elementname="person"xs:complexTypexs:sequencexs:elementref="address"/>
  1. xs:elementref="Job"/>
  2. xs:attributename="NAME"use="required"type="xs:NCName"xs:elementxs:elementname="address"xs:elementref="state"xs:attributename="country"use="required"type="xs:NCName"xs:elementname="state"type="xs:NCName"xs:elementname="Job"type="xs:NCName"xs:schema>
使用xbinder根据xsd生成c_c++源码
berserkerr 发表于 2005-4-25 12:57:00

我在网上找了一个XML Data binding的工具,叫做XBinder,支持XML Schema和C/C++之间的映射,支持windows,linux和各种unix平台。其主页为http://obj-sys.com/products_xbinder.shtml,我已经把各平台下的xbinder安装文件放在\\172.18.42.200\Incoming\xgm\xbinder下。

使用xbinder的步骤为:

1.根据xsd生成c/c++源代码(*.c或*.cpp,*.h)和makefile文件

2.在自己的c/c++文件里include前一步骤所生成的h文件,使用前一步骤生成的c++ class或c struct

3.make (要将xbinder的库文件link起来,这些都已经在自动生成的makefile中写好了)

我在windows下试了一下,根据OTA的schema文件FS_OTA_AirBookRS.xsd,生成了一系列cpp和h文件,并可以使用。


阅读全文|回复(0)|引用通告|编辑

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

相关推荐


php输出xml格式字符串
J2ME Mobile 3D入门教程系列文章之一
XML轻松学习手册
XML入门的常见问题(一)
XML入门的常见问题(三)
XML轻松学习手册(2)XML概念
xml文件介绍及使用
xml编程(一)-xml语法
XML文件结构和基本语法
第2章 包装类