获取XML配置数据
XML结构:
<Setting>
<BIG>
<tdHead>
<td TdName="序号" TdWidth="50px" TdHeight="" TdTitle="" TdRowspan="" TdColspan=""></td>
<td TdName="公司" TdWidth="60px" TdHeight="" TdTitle="" TdRowspan="" TdColspan=""></td>
<td TdName="线路" TdWidth="90px" TdHeight="" TdTitle="" TdRowspan="" TdColspan=""></td>
<td TdName="牌照号" TdWidth="" TdHeight="" TdTitle="" TdRowspan="" TdColspan=""></td>
<td TdName="自编号" TdWidth="" TdHeight="" TdTitle="" TdRowspan="" TdColspan=""></td>
<td TdName="开始时间" TdWidth="120px" TdHeight="" TdTitle="" TdRowspan="" TdColspan=""></td>
<td TdName="结束时间" TdWidth="120px" TdHeight="" TdTitle="" TdRowspan="" TdColspan=""></td>
<td TdName="超速时长(秒)" TdWidth="80px" TdHeight="" TdTitle="" TdRowspan="" TdColspan=""></td>
<td TdName="超速里程(公里)" TdWidth="80px" TdHeight="" TdTitle="" TdRowspan="" TdColspan=""></td>
<td TdName="最高速度(km/h)" TdWidth="90px" TdHeight="" TdTitle="" TdRowspan="" TdColspan=""></td>
<td TdName="平均车速(km/h)" TdWidth="90px" TdHeight="" TdTitle="" TdRowspan="" TdColspan=""></td>
<td TdName="超速标准(km/h)" TdWidth="70px" TdHeight="" TdTitle="" TdRowspan="" TdColspan=""></td>
<td TdName="超速位置" TdWidth="" TdHeight="" TdTitle="" TdRowspan="" TdColspan=""></td>
</tdHead>
</BIG>
</Setting>
/// <summary>
/// 获取到xml数据集中所需节点数据
/// </summary>
/// <param name="Path"></param>
/// <param name="NodeName"></param>
/// <returns></returns>
public List<List<MonitorTableHead>> GetXMLData(string Path,string NodeName)
{
List<List<MonitorTableHead>> listLMont = new List<List<MonitorTableHead>>();
try
{
//string str1 =Process.GetCurrentProcess().MainModule.FileName;//可获得当前执行的exe 的文件名。
//string str2=Environment.CurrentDirectory;//获取和设置当前目录(即该进程从中启动的目
////录)的完全限定路径。
////备注 按照定义,如果该进程在本地或网络驱动器的根目录中启动,则此属性的值为驱
////动器名称后跟一个尾部反斜杠(如"C:\")。如果该进程在子目录中启动,则此属性的值为不
////带尾部反斜杠的驱动器和子目录路径(如"C:\mySubDirectory")。
//string str3=Directory.GetCurrentDirectory();//获取应用程序的当前工作目录。
//string str4=AppDomain.CurrentDomain.BaseDirectory;//获取基目录,它由程序集冲突解决
//////程序用来探测程序集。
////string str5=System.Net.Mime.MediaTypeNames.Application.StartupPath;//获取启动了应用程序的可执行文件的路径,不包括可
//////执行文件的名称。
////string str6=System.Net.Mime.MediaTypeNames.Application.ExecutablePath;//获取启动了应用程序的可执行文件的路径,包括可
//////执行文件的名称。
//string str7=AppDomain.CurrentDomain.SetupInformation.ApplicationBase;//获取或设置包含
////该应用程序的目录的名称。
XmlDocument doc = new XmlDocument();
doc.Load(AppDomain.CurrentDomain.BaseDirectory + Path);
XmlNodeList nodeList = ((XmlElement)doc.SelectSingleNode("Setting")).SelectSingleNode(NodeName).ChildNodes;
//遍历所有子节点
foreach (XmlNode xn in nodeList)
{
List<MonitorTableHead> listMon = new List<MonitorTableHead>();
XmlElement xe = (XmlElement)xn; //将子节点类型转换为XmlElement类型
if (xe.Name == "tdHead")
{
//xe.Attributes["id"].Value = "ssss";//修改节点属性的值。
//xe.SetAttribute("genre", "update Sky_Kwolf"); //则修改该属性为“update Sky_Kwolf”
XmlNodeList nls = xe.ChildNodes;//继续获取xe子节点的所有子节点
foreach (XmlNode xn1 in nls)//遍历
{
MonitorTableHead mont = new MonitorTableHead();
XmlElement xe2 = (XmlElement)xn1; //转换类型
mont.TdName = xe2.Attributes["TdName"].Value;
mont.TdWidth = xe2.Attributes["TdWidth"].Value;
mont.TdHeight = xe2.Attributes["TdHeight"].Value;
mont.TdTitle = xe2.Attributes["TdTitle"].Value;
mont.TdRowspan = xe2.Attributes["TdRowspan"].Value;
mont.TdColspan = xe2.Attributes["TdColspan"].Value;
listMon.Add(mont);
}
}
listLMont.Add(listMon);
}
}
catch (Exception)
{
return null;
//throw;
}
return listLMont;
}
获取XML配置数据的更多相关文章
- wemall app商城源码Android 获取XML网络数据并绑定到ListView
wemall-mobile是基于WeMall的android app商城,只需要在原商城目录下上传接口文件即可完成服务端的配置,客户端可定制修改.本文分享Android 获取XML网络数据并绑定到Li ...
- 用LINQ获取XML节点数据
Insus.NET想对<从字符串中获取XML节点数据> http://www.cnblogs.com/insus/p/3299052.html 这篇改写为使用LINQ的方法实现.LINQ中 ...
- 从字符串中获取XML节点数据
从字符串中获取XML节点数据,前一篇<字符串创建XML文档> http://www.cnblogs.com/insus/p/3298579.html 是储存为一个XML文档.现在,Insu ...
- PHP生成和获取XML格式数据
在做数据接口时,我们通常要获取第三方数据接口或者给第三方提供数据接口,而这些数据格式通常是以XML或者JSON格式传输,本文将介绍如何使用PHP生成XML格式数据供第三方调用以及如何获取第三方提供的X ...
- bean.xml配置数据源和读取配置文件配置数据源
一.bean.xml配置数据源 bean.xml装配bean,依赖注入其属性的时候,对应实体类中属性一定要有set方法, 二.读取配置文件配置数据源 1.配置文件 bean.xml配置: classp ...
- 使用GridView来获取xml文件数据
在任何一个系统中,数据的读取和编辑都是至关重要的.无论你是CS还是BS,都需要对数据进行操作.其实 我们可以发现,很多软件和系统最终都是对于数据库中数据的处理.之前在CS的学习过程中我们接触到了很多 ...
- 使用PHP生成和获取XML格式数据
1.php生成xml
- spring通过注解依赖注入和获取xml配置混合的方式
spring的xml配置文件中某个<bean></bean>中的property的用法是什么样的? /spring-beans/src/test/java/org/spring ...
- 发送xml报文去第三方请求获取xml报文数据
import java.io.*; import java.net.HttpURLConnection; import java.net.MalformedURLException; import j ...
随机推荐
- tcp/udp socket编程异同
一.TCP与UDP的区别 基于连接与无连接 对系统资源的要求(TCP较多,UDP少) UDP程序结构较简单 流模式与数据报模式 TCP保证数据正确性,UDP可能丢包 TCP保证数据顺序,UDP不保证 ...
- ClassLoader, JavaAgent, Aspectj Weaving一站式扫盲帖
最近工作里复习的Class Loader基础知识集锦,写下来希望对别人有帮助,而且不止是为了撂倒面试官. 为了尽量简单明了容易背,有些部分写得比较干. 0. 参考资料: 书:<深入了解Java虚 ...
- python 定义函数
在Python中,定义一个函数要使用def语句,依次写出函数名.括号.括号中的参数和冒号:,然后,在缩进块中编写函数体,函数的返回值用return语句返回. 我们以自定义一个求绝对值的my_abs函数 ...
- oracle 修改用户下部分表现有表空间
工作日记之<修改用户表现有表空间> //user_tables可查询出当前登录用户的所有表,以及部分表信息,可以灵活运用于其他用途 //假设现有表空间TS1.TS2,需要迁移所有表空间TS ...
- poj 4045 (树形DP)
先选一点为根节点找出所有父节点i到下面所有点距离和dp[i],该父节点下面有多少个点Node[i]. 然后求出所有节点的所有非子节点到该点的距离dp1[v]+=(dp1[u]+(dp[u]-dp[v] ...
- idea生成JAVADOC 报java.lang.IllegalArgumentException解决方案[终极]
idea生成javadoc文档,总是会报 java.lang.IllegalArgumentException at sun.net.www.ParseUtil.decode(ParseUt ...
- HTML中标签和元素的区别
作为一个前端,相信大家最先接触应该都是HTML吧?在HTML中很多人可能都没有把什么叫标签,什么叫元素这个概念搞清楚,为了把这个大家不曾留意的易混淆的搞清楚,特作此一文彻底解决掉这个问题! 首先我们来 ...
- hdu 2844 Coins (多重背包)
题意是给你几个数,再给你这几个数的可以用的个数,然后随机找几个数来累加, 让我算可以累加得到的数的种数! 解题思路:先将背包初始化为-1,再用多重背包计算,最后检索,若bb[i]==i,则说明i这个数 ...
- Java算法实例集合(2)
这是Standford一位计算机老师的私藏,里面包含了不少Java/C++的算法实现代码.有兴趣的朋友可以看看.
- 使用python编写批量卸载android应用的脚本
该脚本的功能是卸载android手机中安装的所有第三方应用,主要是使用adb shell pm.adb uninstall 命令,所以使用的前提是需要配好adb的环境变量,下面上代码: #!/usr/ ...