数据字典生成工具之旅(3):PowerDesign文件组成结构介绍及操作
2014-07-14 12:52
441 查看
从这篇开始将正式讲解整个重要部分的实现细节,本篇讲解Pdm文件的解析。其实PDM文件就是XML文件,可以用Editplus或者VS打开查看。了解到这一点之后大家就能猜到,可以用解析XML的方式读取PDM文件了。
阅读目录
PDM文件结构及在本工具的存储方式
PDM文件读取
XML文件操作增删改查
工具源代码下载
学习使用
回到顶部
可以看到这些节点都是带命名空间,所以我们解析这段XML的时候需要加上命名空间。表的<a:Name>(中文名称),<a:Code>(表名),<c:Columns>是所有列节点集合,具体到每一列的<o:Column>则有中文名称,英文名称,主键,是否空,默认值,是否自增等关键信息了。
参考上面的设计,添加了四个实体,ColumnInfo,TableInfo,PkKeyInfo,PhysicalDiagramInfo
View Code
回到顶部
回到顶部
更多数据字典生成工具资料请点击数据字典生成工具专题。
如果,您认为阅读这篇博客让您有些收获,不妨点击一下右下角的【推荐】按钮。
如果,您希望更容易地发现我的新博客,不妨点击一下绿色通道的【关注我】。
因为,我的写作热情也离不开您的肯定支持。
感谢您的阅读,如果您对我的博客所讲述的内容有兴趣,请继续关注我的后续博客,我是焰尾迭 。
阅读目录
PDM文件结构及在本工具的存储方式
PDM文件读取
XML文件操作增删改查
工具源代码下载
学习使用
回到顶部
PDM文件结构及在本工具的存储方式
下面看看用Editplus读取出来的XML,这里我只关注Table节点,这是一个表的最小节点了。<o:Table Id="o97"> <a:ObjectID>41144D16-B6B3-43CD-8B36-57CBAFB26654</a:ObjectID> <a:Name>预算资源面积月事实表</a:Name> <a:Code>y_FactYsRoomAreaMonth</a:Code> <a:CreationDate>1366118213</a:CreationDate> <a:Creator>huzhiwen</a:Creator> <a:ModificationDate>1396403208</a:ModificationDate> <a:Modifier>gongw</a:Modifier> <a:TotalSavingCurrency/> <c:Columns> <o:Column Id="o361"> <a:ObjectID>F03D6EA9-183A-4B6A-BD52-7B711572AA45</a:ObjectID> <a:Name>ID</a:Name> <a:Code>ID</a:Code> <a:CreationDate>1366118213</a:CreationDate> <a:Creator>huzhiwen</a:Creator> <a:ModificationDate>1381212250</a:ModificationDate> <a:Modifier>huzw</a:Modifier> <a:DataType>bigint</a:DataType> <a:Identity>1</a:Identity> <a:Mandatory>1</a:Mandatory> </o:Column> </c:Columns> <c:Keys> <o:Key Id="o380"> <a:ObjectID>F9089FCD-D9E9-4FB0-92F3-B7268D49526D</a:ObjectID> <a:Name>PK_Z_DIMROOMMONTH</a:Name> <a:Code>PK_Z_DIMROOMMONTH</a:Code> <a:CreationDate>1366118213</a:CreationDate> <a:Creator>huzhiwen</a:Creator> <a:ModificationDate>1366118213</a:ModificationDate> <a:Modifier>huzhiwen</a:Modifier> <c:Key.Columns> <o:Column Ref="o361"/> </c:Key.Columns> </o:Key> </c:Keys> <c:PrimaryKey> <o:Key Ref="o380"/> </c:PrimaryKey> <c:ClusterObject> <o:Key Ref="o380"/> </c:ClusterObject> </o:Table>
可以看到这些节点都是带命名空间,所以我们解析这段XML的时候需要加上命名空间。表的<a:Name>(中文名称),<a:Code>(表名),<c:Columns>是所有列节点集合,具体到每一列的<o:Column>则有中文名称,英文名称,主键,是否空,默认值,是否自增等关键信息了。
参考上面的设计,添加了四个实体,ColumnInfo,TableInfo,PkKeyInfo,PhysicalDiagramInfo
public void Add() { Console.WriteLine("item节点添加test=123属性"); XmlNodeList xmlNodeList = null; XmlAttribute xmlAttribute = null; xmlNodeList = XmlDoc.SelectNodes("/root/item"); foreach (XmlNode xmlNode in xmlNodeList) { xmlAttribute = XmlDoc.CreateAttribute("test"); xmlAttribute.Value = "123"; xmlNode.Attributes.Append(xmlAttribute); } Console.WriteLine("item节点添加子节点<test name='123'>"); xmlNodeList = XmlDoc.SelectNodes("/root/item"); XmlElement xmlNewNode = null; foreach (XmlNode xmlNode in xmlNodeList) { xmlNewNode = XmlDoc.CreateElement("test"); xmlNewNode.SetAttribute("name", "123"); xmlNewNode.InnerText = "123"; xmlNode.AppendChild(xmlNewNode); } XmlDoc.Save("C:\\123.xml"); Console.WriteLine(XmlDoc.InnerXml); }
View Code
回到顶部
工具源代码下载
目前总共有经过了七个版本的升级,现在提供最新版本的下载地址数据字典生成工具V2.0安装程序 | 最新安装程序 |
数据字典生成工具源代码 | 最新源代码 |
http://code.taobao.org/svn/DataDicPub | SVN最新源码共享地址 |
学习使用
如果你使用了该工具,或者想学习该工具,欢迎加入这个小组,一起讨论数据字典生成工具、把该工具做的更强,更方便使用,一起加入147425783 QQ群。更多数据字典生成工具资料请点击数据字典生成工具专题。
如果,您认为阅读这篇博客让您有些收获,不妨点击一下右下角的【推荐】按钮。
如果,您希望更容易地发现我的新博客,不妨点击一下绿色通道的【关注我】。
因为,我的写作热情也离不开您的肯定支持。
感谢您的阅读,如果您对我的博客所讲述的内容有兴趣,请继续关注我的后续博客,我是焰尾迭 。
相关文章推荐
- 数据字典生成工具之旅(4):NPOI操作EXECL
- 数据字典生成工具之旅(2):数据字典生成工具及文档工具作用介绍
- 数据字典生成工具之旅(9):多线程使用及介绍
- 数据字典生成工具之旅(6):NVelocity语法介绍及实例
- box2d 描点工具生成b2Shape数据(xml通用格式),oc、c++解析模块类文件,b2Shape数据可视化工具
- C# 利用自带xsd.exe工具操作XML-如通过XML生成xsd文件
- 根据数据字典表定义的表结构,生成创建表的SQL语句
- 操作Word模板文件.dot 结合具体数据 生成Word文档 .doc
- 第三章数程序设计初步--控制结构综合项目4-2文件操作初体验练习2从文件读取数据
- dump文件生成工具使用介绍
- DBVERIFY工具用来验证数据文件的物理结构
- MapInfo数据字典、文件结构说明
- Oracle数据字典(用于做代码生成工具用)
- 数据库生成数据字典工具(PDMREAD)图解
- 第三章数程序设计初步--控制结构综合项目4-2文件操作初体验练习3将数据写入文件
- C# 利用自带xsd.exe工具操作XML-如通过XML生成xsd文件
- 操作Word模板文件.dot 结合具体数据 生成Word文档 .doc
- 基于数据字典的通用查询系统(二)数据库组成结构的分析
- 分享一个自己开发的数据字典与动态代码生成工具
- 一键生成表结构说明文档的参考,数据字典生成方式参考