zoukankan      html  css  js  c++  java
  • 读取XML文件内容

    创建XML文件

     1 <?xml version="1.0" encoding="utf-8" ?>
     2 <Custom>
     3   <CaseType ID="1" Parent="0" Title="刑事案件">
     4     <CountA ID ="10" Parent="1" Title="小计"></CountA>
     5     <YiShen ID="11" Parent="1" Title="一审"></YiShen>
     6     <ErShenFH ID="12" Parent="1" Title="二审复核">
     7       <ErShen ID="121" Parent="12" Title="二审">
     8         <ShangSu ID="1211" Parent="121" Title="上诉"></ShangSu>
     9         <KangSu ID="1212" Parent="121" Title="抗诉">
    10           <SiXing ID="12121" Parent="1212" Title="死刑"></SiXing>
    11           <NoSiXing ID="12122" Parent="1212" Title="非死刑">
    12             <WuZui ID="121221" Parent="12122" Title="无罪"></WuZui>
    13             <YouZui ID="121222" Parent="12122" Title="有罪"></YouZui>
    14           </NoSiXing>
    15         </KangSu>
    16       </ErShen>
    17       <FuHe ID ="122" Parent="12" Title="复核"></FuHe>
    18     </ErShenFH>
    19     <ZaiShen ID="13" Parent="1" Title="再审">
    20       <KangSuAgain ID="131" Parent="13" Title="抗诉再审"></KangSuAgain>
    21       <ZhiLingAgain ID="132" Parent="13" Title="指令再审"></ZhiLingAgain>
    22       <TiqiAgain ID="133" Parent="13" Title="本院提起再审"></TiqiAgain>
    23     </ZaiShen>
    24     <ShenSu ID="14" Parent="1" Title="申诉复查"></ShenSu>
    25     <FaDingXing ID="15" Parent="1" Title="法定刑以下核准"></FaDingXing>
    26     <QingShi ID="16" Parent="1" Title="请示">
    27       <GeAn ID="161" Parent="16" Title="个案请示">
    28         <FaLv ID="1611" Parent="161" Title="法律问题请示"></FaLv>
    29         <YiGuiDing ID="1612" Parent="161" Title="依规定内审"></YiGuiDing>
    30       </GeAn>
    31       <LeiAn ID="162" Parent="16" Title="类案请示"></LeiAn>
    32       <OtherCase ID="163" Parent="16" Title="其他案件"></OtherCase>
    33     </QingShi>
    34     <ZhongJie ID="17" Parent="1" Title="终结"></ZhongJie>
    35     <QiTa ID="18" Parent="1" Title="其他"></QiTa>
    36   </CaseType>
    37 
    38   <CaseType ID="2" Parent="0" Title="民事案件">
    39     <CountB ID ="20" Parent="2" Title="小计"></CountB>
    40     <YiShen ID="21" Parent="2" Title="一审"></YiShen>
    41     <ErShen ID="22" Parent="2" Title="二审"></ErShen>
    42     <ShenCha ID ="23" Parent="2" Title="再审审查"></ShenCha>
    43     <ZaiShen ID="24" Parent="2" Title="再审">
    44       <KangSuAgain ID="241" Parent="24" Title="抗诉再审"></KangSuAgain>
    45       <ZhiLingAgain ID="242" Parent="24" Title="指令再审"></ZhiLingAgain>
    46       <TiqiAgain ID="243" Parent="24" Title="本院提起再审"></TiqiAgain>
    47     </ZaiShen>
    48     <ShenSu ID="25" Parent="2" Title="申诉复查"></ShenSu>
    49     <QingShi ID="26" Parent="2" Title="请示">
    50       <GeAn ID="261" Parent="26" Title="个案请示">
    51         <FaLv ID="2611" Parent="261" Title="法律问题请示"></FaLv>
    52         <YiGuiDing ID="2612" Parent="261" Title="依规定内审"></YiGuiDing>
    53       </GeAn>
    54       <LeiAn ID="262" Parent="26" Title="类案请示"></LeiAn>
    55       <OtherCase ID="263" Parent="26" Title="其他案件"></OtherCase>
    56     </QingShi>
    57     <ZhongJie ID="27" Parent="2" Title="终结"></ZhongJie>
    58     <QiTa ID="28" Parent="2" Title="其他"></QiTa>
    59   </CaseType>
    60 
    61   <CaseType ID="3" Parent="0" Title="行政案件">
    62     <CountC ID ="30" Parent="3" Title="小计"></CountC>
    63     <YiShen ID="31" Parent="3" Title="一审"></YiShen>
    64     <ErShen ID="32" Parent="3" Title="二审"></ErShen>
    65     <ShenCha ID ="33" Parent="3" Title="再审审查"></ShenCha>
    66     <ZaiShen ID="34" Parent="3" Title="再审">
    67       <KangSuAgain ID="341" Parent="34" Title="抗诉再审"></KangSuAgain>
    68       <ZhiLingAgain ID="342" Parent="34" Title="指令再审"></ZhiLingAgain>
    69       <TiqiAgain ID="343" Parent="34" Title="本院提起再审"></TiqiAgain>
    70     </ZaiShen>
    71     <ShenSu ID="35" Parent="3" Title="申诉复查"></ShenSu>
    72     <Guojia ID="36" Parent="3" Title="国家赔偿"></Guojia>
    73     <QiTa ID="37" Parent="3" Title="其他"></QiTa>
    74   </CaseType>
    75 </Custom>
    创建XML文件

    读取XML文件内容

     1  /// <summary>
     2         /// 读取XML文件内容
     3         /// </summary>
     4         /// <returns></returns>
     5         public static List<CustomReport> CustomReport()
     6         {
     7             List<CustomReport> obj = new List<Model.CustomReport>();
     8             string filePath = HttpRuntime.AppDomainAppPath + @"XMLCustomReport.xml";
     9             XmlDocument xmlDoc = new XmlDocument();
    10             xmlDoc.Load(filePath);
    11             XmlNode caseTypes1 = xmlDoc.SelectSingleNode("Custom");
    12             XmlNodeList caseTypes = caseTypes1.ChildNodes;
    13 
    14             foreach (XmlNode item in caseTypes)
    15             {
    16                 CustomReport re = new CustomReport();
    17                 //    //案件类型
    18                 re.ID = item.Attributes["ID"].Value;
    19                 re.Parent = item.Attributes["Parent"].Value;
    20                 re.Title = item.Attributes["Title"].Value;
    21                 obj.Add(re);
    22                 //如果存在子节点
    23                 if (item.HasChildNodes)
    24                 {
    25                     foreach (XmlNode secondTd in item.ChildNodes)
    26                     {
    27                         CustomReport sec = new CustomReport();
    28                         //第二层标题
    29                         sec.ID = secondTd.Attributes["ID"].Value;
    30                         sec.Parent = secondTd.Attributes["Parent"].Value;
    31                         sec.Title = secondTd.Attributes["Title"].Value;
    32                         obj.Add(sec);
    33 
    34                         if (secondTd.HasChildNodes)
    35                         {
    36                             foreach (XmlNode thirdTd in secondTd.ChildNodes)
    37                             {
    38                                 CustomReport thi = new CustomReport();
    39                                 //第三层标题
    40                                 thi.ID = thirdTd.Attributes["ID"].Value;
    41                                 thi.Parent = thirdTd.Attributes["Parent"].Value;
    42                                 thi.Title = thirdTd.Attributes["Title"].Value;
    43                                 obj.Add(thi);
    44                                 if (thirdTd.HasChildNodes)
    45                                 {
    46                                     foreach (XmlNode fourthTd in thirdTd.ChildNodes)
    47                                     {
    48                                         CustomReport fou = new CustomReport();
    49                                         //第四层标题
    50                                         fou.ID = fourthTd.Attributes["ID"].Value;
    51                                         fou.Parent = fourthTd.Attributes["Parent"].Value;
    52                                         fou.Title = fourthTd.Attributes["Title"].Value;
    53                                         obj.Add(fou);
    54 
    55                                         if (fourthTd.HasChildNodes)
    56                                         {
    57                                             foreach (XmlNode fifthTd in fourthTd.ChildNodes)
    58                                             {
    59                                                 CustomReport fif = new CustomReport();
    60                                                 //第五层标题
    61                                                 fif.ID = fifthTd.Attributes["ID"].Value;
    62                                                 fif.Parent = fifthTd.Attributes["Parent"].Value;
    63                                                 fif.Title = fifthTd.Attributes["Title"].Value;
    64                                                 obj.Add(fif);
    65 
    66                                                 if (fifthTd.HasChildNodes)
    67                                                 {
    68                                                     foreach (XmlNode sixthTd in fifthTd.ChildNodes)
    69                                                     {
    70                                                         CustomReport six = new CustomReport();
    71                                                         //第六层标题
    72                                                         six.ID = sixthTd.Attributes["ID"].Value;
    73                                                         six.Parent = sixthTd.Attributes["Parent"].Value;
    74                                                         six.Title = sixthTd.Attributes["Title"].Value;
    75                                                         obj.Add(six);
    76 
    77                                                     }
    78                                                 }
    79                                             }
    80                                         }
    81                                     }
    82                                 }
    83                             }
    84                         }
    85                     }
    86                 }
    87             }
    88             return obj;
    89         }
    读取XML文件内容

    生成并赋值表格内容

     1  /// <summary>
     2         /// 加载自定义表
     3         /// </summary>
     4         /// <param name="Year"></param>
     5         /// <param name="Month"></param>
     6         /// <param name="caseStatus"></param>
     7         /// <returns></returns>
     8         public string CustomReport(string Year, string Month, string caseStatus)
     9         {
    10             string color = "";
    11             string color_xingshi = "background-color: #bfbfbf";//刑事
    12             string color_minshi = "background-color:#b8cce4";//民事
    13             string color_xingzheng = "background-color: #e6b9b8";//行政
    14             string color_department = "background-color:#79ff79";//部门
    15             string color_sum = "background-color:#ffe66f";//小计
    16             string width = "30";
    17             string nowrap_department = "white-space:nowrap";//部门列表禁止换行
    18             string align = "text-align: center";
    19             string verTical = "vertical-align: top";
    20             int colspan = 4;
    21             int rowspan = 4;
    22             int year = ParamPlus.GetIntParamValue("Year");
    23             int month = ParamPlus.GetIntParamValue("Month");
    24             if (year <= 0 || month <= 0)
    25             {
    26                 year = DateTime.Now.Year;
    27                 month = DateTime.Now.Month;
    28             }
    29             string casetype = ParamPlus.GetStringParamValue("caseStatus");
    30             DateTime date = DateTime.Parse(year + "-" + month + "-01");
    31             // 请求数据
    32             DateTime startTime = date.AddDays(1 - date.Day);  //月初
    33             DateTime endTime = startTime.AddMonths(1).AddDays(-1);  //月末
    34             string trStart = "<tr>";
    35             string trEnd = "</tr>";
    36             //部门列表
    37             StringBuilder tableDepartment = new StringBuilder();
    38             StringBuilder departmentList = new StringBuilder();
    39             //第一层标题
    40             StringBuilder tableHead = new StringBuilder();
    41             //第二层标题
    42             StringBuilder SecondtableHead = new StringBuilder();
    43             //第三层标题
    44             StringBuilder ThirdtableHead = new StringBuilder();
    45             //第四层标题
    46             StringBuilder FourthtableHead = new StringBuilder();
    47             //第五层标题
    48             StringBuilder FifthtableHead = new StringBuilder();
    49             //第六层标题
    50             StringBuilder SixthtableHead = new StringBuilder();
    51             //合计
    52             StringBuilder Sum = new StringBuilder();
    53             //加载部门
    54             tableDepartment.AppendFormat("<th style="{0};{1}" width="100" nowrap align="center" rowspan="7">{2}</th>", color_department, nowrap_department, "部门");
    55 
    56             #region 第一层标题
    57             //第一层标题
    58             foreach (var item in listall)
    59             {
    60                 if (caseStatus.Contains("刑事") && item.ID == "1" && item.Parent == "0")//刑事
    61                 {
    62                     width = "auto";
    63                     colspan = 18;
    64                     tableHead.AppendFormat("<th style="{0};{1};{2}" width="{3}" colspan="{4}">{5}</th>", color_xingshi, align, verTical, width, colspan, item.Title);
    65                 }
    66                 else if (caseStatus.Contains("民事") && item.ID == "2" && item.Parent == "0")//民事
    67                 {
    68                     width = "auto";
    69                     colspan = 14;
    70                     tableHead.AppendFormat("<th style="{0};{1};{2}" width="{3}" colspan="{4}">{5}</th>", color_minshi, align, verTical, width, colspan, item.Title);
    71                 }
    72                 else if (caseStatus.Contains("行政") && item.ID == "3" && item.Parent == "0")//行政
    73                 {
    74                     width = "auto";
    75                     colspan = 10;
    76                     tableHead.AppendFormat("<th style="{0};{1};{2}" width="{3}" colspan="{4}">{5}</th>", color_xingzheng, align, verTical, width, colspan, item.Title);
    77                 }
    78             }
    79             .............
    80  StringBuilder thead = new StringBuilder();
    81             thead.AppendFormat(trStart + tableDepartment + trEnd);//部门
    82             thead.AppendFormat(trStart + tableHead + trEnd);//第一层
    83             thead.AppendFormat(trStart + SecondtableHead + trEnd);//第二层
    84             thead.AppendFormat(trStart + ThirdtableHead + trEnd);//第三层
    85             thead.AppendFormat(trStart + FourthtableHead + trEnd);//第四层
    86             thead.AppendFormat(trStart + FifthtableHead + trEnd);//第五层
    87             thead.AppendFormat(trStart + SixthtableHead + trEnd);//第六层
    88             thead.AppendFormat(trStart + departmentList + trEnd);//部门列表
    89             thead.AppendFormat(trStart + Sum + trEnd);//合计
    90             return thead.ToString();
    91         }             
    生成并赋值表格

    解析xml内容:

    var doc = new XmlDocument();
    doc.LoadXml(xml);
    var node = doc.SelectSingleNode("Topics");
    if (node != null)
    {
       if (node.HasChildNodes)
       {
          model.ID = node.SelectNodes("TopicsId").Item(0).InnerText;
       }
    }
  • 相关阅读:
    webpack4笔录
    在Salesforce中进行Report和Dashboard的配置
    在Salesforce中以PDF的格式显示对应的页面
    在Salesforce中处理Email的发送
    在Visualforce page中用自带的控件实现Ajax回调后台方法(并且可以用js去动态给parameters赋值)
    javascript settimeout and setinterval
    Convert XML to Object using LINQ
    Convert Object to XML using LINQ
    JS对Array进行自定制排序
    在Salesforce中通过 Debug Log 方式 跟踪逻辑流程
  • 原文地址:https://www.cnblogs.com/lijianda/p/6640856.html
Copyright © 2011-2022 走看看