XmlDocument xml = new XmlDocument();
xml.Load(Way);//获取相对路径
var Exports = xml.GetElementsByTagName("Export");//获取所有Export节点
var WorkSheets = xml.GetElementsByTagName("WorkSheet");//获取所有WorkSheet节点
for (int i = 0; i < Exports.Count; i++)
{
if (Exports[i].Attributes["type"].InnerText == "AMeterCostAnnual_Scale")//匹配type属性的的节点
{
Exports[i].Attributes["FileName"].InnerText = SYear + "至" + EYear + "年水电费同比环统计.xls";//修改文件名
}
if (WorkSheets[i].Attributes["SqlId"].InnerText == "Business.AMeterCostAnnual")//匹配SqlId属性的节点
{
XmlNode root = xml.GetElementsByTagName("WorkSheet")[i];//获取要修改的WorkSheet节点
for (int j = 0; j < dt.Columns.Count; j++)
{
string Name = dt.Columns[j].ColumnName;
string Num = Convert.ToChar('A' + j).ToString();
string Title = string.Empty;
string status = string.Empty;
if (j == 0)
{
int ChildNum = root.ChildNodes.Count;
for (int k = 0; k < ChildNum; k++)//第一次进入,循环移除所有子节点、属性
{
root.RemoveChild(root.FirstChild);
}

Title = "区域";//修改导出文件中的标题
}
else
{
status = Name.Substring(4, 1);
if (status == "P")
{
Title = Name.Substring(0, 4) + "年" + Action + "电费";

}
else
{
Title = Name.Substring(0, 4) + "年" + Action + "同比增幅";
}
}

XmlElement elem = xml.CreateElement("Column");
elem.AddAttriubte("ConvertType", "Normal");//设置属性
elem.AddAttriubte("Required", "true");
elem.AddAttriubte("ColumnName", Num);
elem.AddAttriubte("ColumnTitleName", Title);
elem.AddAttriubte("Type", "System.String");
elem.AddAttriubte("DefaultValue", "");
elem.AddAttriubte("Field", Name);
root.AppendChild(elem);
}

}
}

xml.Save(Way);

对XML文件进行的修改的更多相关文章

  1. java操作xml文件--修改节点

          上一篇文章我介绍了SAX方法解析XML文件的过程,这篇文章讲解的内容是利用DOM方法修改XML文件的节点内容.       下面依然是首先贴出XML文件: <?xml version ...

  2. eclipse配置tomcat后修改server.xml文件(如编码等)无效问题

    我们用eclipse配置好tomcat后,在处理中文乱码或是配置数据源时,我们要修改Tomcat下的server.xml等文件. 修改后重启Tomcat服务器时发现xml文件又被还原了. 因为Tomc ...

  3. 【Android】XML文件的解析

    1.首先我们可以在res包路径下创建一个raw包,然后在raw下创建一个email.xml 文件,并修改其内容如下: <?xml version="1.0" encoding ...

  4. Java--Dom解析XML文件

          之前写过几篇关于Java中解析XML文件的方法,不过,感觉不够简单,今天重写了一遍代码,用到的是方法是Dom,其中加入了日志记录功能--Log4j.       好了,不多说了,先把XMl ...

  5. 在android工程中,res目录下又有anim、drawable、layout、menu、raw、values和xml文件夹,分别用来保存?

    res目录主要是存放资源文件的!layout 布局 这个就是你经常看到的与用户交互的界面的 xml 文件,就是各个 view 的排列和嵌套,没什 么好说的啦 风格和主题. 风格主要是指 view 的显 ...

  6. selenium-python读取XML文件

    首先这是我们要读取的XML文件 <?xml version="1.0" encoding="utf-8" ?><info> <ba ...

  7. Android开发,布局xml文件命名注意事项——不能包含任何大写字母

    转自:http://blog.sina.com.cn/s/blog_628b45090100zuit.html 在开发Android应用时,会接触到布局文件,一般在 工程名/res/layout/*. ...

  8. maven设置------settings.xml文件学习

    https://blog.csdn.net/tomato__/article/details/13025187 快速预览 maven的配置文件为settings.xml,在下面路径中可以找到这个文件, ...

  9. 解决idea创建ssm项目找不到mybatis的mapper的xml文件问题

    http://blog.csdn.net/v19freedom/article/details/69855302 后来上网搜了下,别人给出的答复 idea在build工程的时候 遇到maven项目 使 ...

随机推荐

  1. 牛客练习赛28 E迎风舞 (三分查找)

    链接:https://www.nowcoder.com/acm/contest/200/E来源:牛客网 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 262144K,其他语言5242 ...

  2. Ocean的游戏(前缀和)

    题目链接:http://oj.ismdeep.com/contest/Problem?id=1284&pid=1 B: Ocean的游戏 Time Limit: 1 s      Memory ...

  3. Python基础教程2#练习使用参数的疑难杂点分析

    在书上120页,一个案例是练习使用参数,有可能新手朋友们有可能对有些地方看不懂,在这里讲解出来,仅供大家学习. 这是代码,注释部分是我的解释: #coding:utf-8 #练习使用参数实例.py d ...

  4. OO第二阶段纪实

    $ 0 写在前面 往往是那些令人格外痛苦的经历,会带给人以最快的成长.转眼间,半个学期的时间过去了,时间匆匆,不管之前对这几次充满了怎样的畏惧,在身边朋友们的帮助和努力下,我也渐渐度过了一个个难关.回 ...

  5. CF670C cinema

    想必是个半水题,div2的C嘛 仔细观察,发现排序可做. 怎么排序呢?排啥呢?拿啥离散化,拿啥结构体呢? 仔细思考热静分析,便可得出结论: 以每个人会的语言离散化,把每个电影建结构体后不排序,而是枚举 ...

  6. 洛谷P3195 玩具装箱

    P3195 [HNOI2008]玩具装箱TOY 第一道斜率优化题. 首先一个基本的状态转移方程是 要使f[i]最小,即b最小. 对于每个j,可以表示为一个点. 然后我们取固定斜率时截距最小的即可,高中 ...

  7. smartProgram学习笔记

    背景:转正前要完成这样一个编程课的学习.平时写代码只是完成基本的功能,没有养成良好的习惯,感觉这样的课程还是要好好学习下,要不真是不知道什么叫写代码. Week1 为什么要写好代码? 因为平时读:写代 ...

  8. halcon几何变换(仿射变换)

    旋转.平移.镜像.缩放.斜切,可参考https://blog.csdn.net/machaoyu86/article/details/51182473 仿射变换前,需要获得仿射变换矩阵. 关于shap ...

  9. 高级组件——工具栏JToolBar

    import javax.swing.*; import java.awt.*; public class Demo extends JFrame { public Demo() { setTitle ...

  10. PEP8规范

    目录 一 代码编排 二 文档编排 三 空格使用 四 注释 五 文档描述 六 命名规范 七 编码建议 代码编排 1缩进,4个空格,不用tab键(因为可能不同系统tab的空格数不一定) 2每行最大长度79 ...