公司加密系统用的是华途的产品。最近公司高层想要重新梳理公司信息安全管理情况,华途加密系统的梳理和优化是重中之重。

今天公司领导要求IT导出目前系统中所有软件、后缀的受控情况,然后IT吭哧吭哧地把华途软件中的XML发给领导了,结果领导根本不知道如何打开XML文件。等到领导用IE打开XML后,看到的是满屏幕的天书。IT的下场我只能说:老惨了。。。

领导看到的XML如下图:

这个XML的格式还是很清晰的:ModuleInfo定义了软件的版本,进程标识,分类,控制类型等信息。  Include节点下面定义了要控制的文件后缀,Exclude节点下面定义了不控制的文件后缀。

所以,解决这个问题的思路很简单:通过代码读取这个XML文件,转义成领导能看懂的格式,存成EXCEL即可。

//定义结果集
scList = new List<SecureControl>();
//读取XML文件
string xmlFile = Path.Combine(Application.StartupPath, "XML", "config.xml");
XElement xele = XElement.Load(xmlFile);
//读取ModuleInfo节点集合
IList<XElement> a = xele.Descendants("ModuleInfo").ToList(); //ModuleInfo

foreach (XElement x in a)
{
try
{
//读取节点属性,取得软件版本等信息。
SecureControl sc = new SecureControl();
sc.IsCharacteristic = x.Attribute("IsCharacteristic").Value;
sc.IsControled = x.Attribute("IsControled").Value;
sc.Process = x.Attribute("Process").Value;
sc.SoftType = x.Attribute("SoftType").Value;
sc.SoftVersion = x.Attribute("SoftVersion").Value;
sc.Include = "";
sc.Exclude = "";
//遍历读取Include
IList<XElement> include = x.Descendants("Include").Descendants("FileType").ToList();
foreach (XElement ic in include)
{
sc.Include += (ic.Value + " ");
}
//遍历读取Exclude
IList<XElement> exclude = x.Descendants("Exclude").Descendants("FileType").ToList();
foreach (XElement ex in exclude)
{
sc.Exclude += (ex.Value + " ");
}
//插入结果集,用于显示
scList.Add(sc);
}
catch
{ }
}

gridControl1.DataSource = scList;

效果展示:

读取界面

存成的Excel:

华途软件受控XML转EXCEL的更多相关文章

  1. 使用Open xml 操作Excel系列之一-读取Excel

    一. 安装Open Xml SDK 从微软网站下载Open xml SDK,安装SDK. 二. 在项目中添加对DocumentFormat.OpenXml库的引用

  2. Java 通过Xml导出Excel文件,Java Excel 导出工具类,Java导出Excel工具类

    Java 通过Xml导出Excel文件,Java Excel 导出工具类,Java导出Excel工具类 ============================== ©Copyright 蕃薯耀 20 ...

  3. python - xml转excel

    xml转excel,可以用xml.etree.ElementTree去解析xml文件,然后用xlwt写入excel 示例:ConvConfig.xml <Conveyor_Channel_1&g ...

  4. 【Python】Xml To Excel

    [Python3] 之前做的入门练习里有一题将excel文件转化为xml文件,这回补上逆向转换→xml to excel 用的还是beautifulsoup. 主要还是:①读取待处理文件文本内容 ②处 ...

  5. xml与Excel转换

    使用Python将如下xml格式转换为Excel格式: xml转为xls格式文件: xml格式如下: <?xml version="1.0" encoding="U ...

  6. 【java工具类】java做的一个xml转Excel工具,基于maven工程

    说明:适合数据库导出为xml时转成Excel 本工具将上传至GitHub:https://github.com/xiaostudy/xiaostudyAPI3 doc4j的maven依赖 <!- ...

  7. Open XML操作Excel导入数据

    项目中发现使用OleDb(using System.Data.OleDb)相关对象处理Excel导入功能,不是很稳定经常出问题,需要把这个问题解决掉.项目组提出使用OpenXML来处理Excel的导入 ...

  8. C# 读写xml、excel、word、ppt、access

    C# 读写xml.excel.word.access 这里只是起个头,不做深入展开,方便以后用到参考 读写xml,主要使用.net  的xml下的document using System;using ...

  9. Open Xml 读取Excel中的图片

      在我的一个项目中,需要分析客户提供的Excel, 读出其中的图片信息(显示在Excel的第几行,第几列,以及图片本身). 网络上有许多使用Open Xml插入图片到Word,Excel的文章, 但 ...

随机推荐

  1. 前端笔记之Canvas

    一.Canvas基本使用 Canvas是HTML5的画布,Canvas算是“不务正业”的面向对象大总结,将面向对象玩极致. 算法为王!就是说canvas你不会,但是算法好,不怕写业务,不怕代码量,只要 ...

  2. Spring+SpringMVC+MyBatis的pom.xml依赖

    <!-- 集中定义依赖版本号 --> <!-- 已经依据maven仓库给出的版本兼容信息,调节好合适的spring.mybatis-spring.mybatis.pagehelper ...

  3. spring boot 2.0 Feign的客户端

    1.pom.xml <dependency> <groupId>org.springframework.cloud</groupId> <artifactId ...

  4. Shiro详解

    Shiro Shiro集成Spring 加入Spring和Shiro的jar包 配置Spring及SpringMVC 参照:官方给出的案例shiro\samples\spring Shiro集成Web ...

  5. 瑞芯微RKnanC芯片处理器介绍

    RKnanC是一种低成本.低功耗.高效率的数字多媒体芯片,它是基于ARM的低功耗处理器结构和硬件加速器.它是专为便携式音频产品应用,如MP3播放器等. RKnanC可以支持各种音频标准的解码,如MP3 ...

  6. Button控件的点击事件

    Java的代码 主要重点: findViewById(); OnClickListener() package com.example.admin.myapplication; import andr ...

  7. SQL内模糊查询语句拼接时单引号'问题

    下面以存储过程查询所有为例,非存储过程(或不是查询所有将*替换为你想要查询的列即可)更为简单, 语法:select * from 表名 where 列名like'%条件%' 拼接后的set @变量名 ...

  8. windows之如何把文件夹转换成iso文件

    (1)oscdimg下载路径: 链接:https://pan.baidu.com/s/1U_SfamsOvI2nav9odAzujQ提取码:21fr (2)以管理员身份运行cmd命令: Oscdimg ...

  9. caffe安装教程(Ubuntu14+GPU+pycaffe+anaconda2)

    caffe安装教程 本文所使用的底层环境配置:cuda8.cudnn6.OpenCV2.4.5.anaconda2(Python2.7).如使用其他版本的环境,如cuda,可安装自己的版本,但须在相应 ...

  10. 跨平台数据库工具Azure Data Studio

    Azure Data Studio是一种跨平台数据库工具,适用于在Windows,MacOS和Linux上使用Microsoft系列内部部署和云数据平台的数据专业人员.Azure Data Studi ...