xml根据属性去重。如csprj去重
public static void distinct(string filePath)
{
//1、创建XML文档对象
XmlDocument doc = new XmlDocument(); //2、加载指定路径的XML
doc.Load(filePath); //3、获得根节点
XmlElement root = doc.DocumentElement; //4-1、获得根节点的所有子节点
XmlNodeList allNodes = root.ChildNodes;
for (int i = ; i < allNodes.Count - ; i++)
{
XmlElement node_Element = (XmlElement)allNodes[i];
string currentNodeValue = node_Element.GetAttribute("Include");
for (int j = i + ; j < allNodes.Count; j++)
{
XmlElement node_Element_temp = (XmlElement)allNodes[j];
if (node_Element_temp.GetAttribute("Include") == currentNodeValue)
{
node_Element_temp.ParentNode.RemoveChild(node_Element_temp);
j--;
continue;
}
}
}
doc.Save(filePath);
}
调用
string path = @"..\..\upload\demo.xml";
distinct(path);
<?xml version="1.0" encoding="utf-8"?>
<ItemGroup>
<Compile Include="1" />
<Compile Include="1" />
<Compile Include="1" />
<Compile Include="2" />
<Compile Include="3" />
<Compile Include="1" />
<Compile Include="1" />
</ItemGroup>
xml根据属性去重。如csprj去重的更多相关文章
- php 修改、增加xml结点属性的实现代码
php修改xml结点属性,增加xml结点属性的代码,有需要的朋友可以参考下 php 修改 增加xml结点属性的代码,供大家学习参考.php修改xml结点属性,增加xml结点属性的代码,有需要的朋友,参 ...
- 简单分析android textview xml 的属性设置
android:ems 设置TextView的宽度为N个字符的宽度. 这样的好处就是,在定义编辑框空间输入多少字符的时候,可以根据固定的值设置编辑框宽度.保证边框和文字的宽度统一.android:ma ...
- for xml path 如何将字段转换为xml的属性
for xml path 如何将字段作为xml的属性: 可在查询时 别名用 as '@..' 如'@value' 如下实例: SELECT A.GiftSetGUID AS '@value',A.Gi ...
- union的特性,去重与不去重
转载:https://blog.csdn.net/kingmax54212008/article/details/33762921 union的特性,去重与不去重 集合操作有 并,交,差 3种运算. ...
- C# 序列化与反序列化之xml对属性或者字段的子类化的子对象进行序列化的解决方案
C# 序列化与反序列化之xml对属性或者字段的子类化的子对象进行序列化的解决方案 xml序列化涉及到XmlRoot,XmlInclude,XmlElement,XmlAttribute,XmlType ...
- Stream流用于按照对象中某一属性来对集合去重+简单数据类型集合的去重
上次对Stream流来进行分组的文章很多人看,想看的可以来这: Stream流来进行集合分组 这次小编又带来Stream的去重,话不多数,直接上代码: 这是对简单数据类型的去重 //字符串集合进行简单 ...
- javascript数组去重 js数组去重
数组去重的方法 一.利用ES6 Set去重(ES6中最常用) function unique (arr) { return Array.from(new Set(arr)) } var arr = [ ...
- java对xml节点属性的增删改查
学习本文之前请先看我的另一篇文章JAVA对XML节点的操作可以对XML操作有更好的了解. package vastsum; import java.io.File; import java.io.Fi ...
- android中xml tools属性详解
第一部分 安卓开发中,在写布局代码的时候,ide可以看到布局的预览效果. 但是有些效果则必须在运行之后才能看见,比如这种情况:TextView在xml中没有设置任何字符,而是在activity中设置了 ...
随机推荐
- WeakReference 学习和使用
本文转自:http://qifuguang.me/2015/09/02/[Java%E5%B9%B6%E5%8F%91%E5%8C%85%E5%AD%A6%E4%B9%A0%E4%B8%83]%E8% ...
- Lintcode: Kth Largest Element 解题报告
Kth Largest Element Find K-th largest element in an array. Note You can swap elements in the array E ...
- spring batch中控制step的走向
1.顺序执行step: <job id="job"> <step id="stepA" parent="s1" next= ...
- 【linux】提醒"libc.so.6: version `GLIBC_2.14' not found"系统的glibc版本太低
原文链接:http://www.myexception.cn/linux-unix/1622052.html [linux]提示"libc.so.6: version `GLIBC_2.14 ...
- 自定义kafka Sink
package my.bigdata; /** * Created by lq on 2017/8/22. */ import java.io.File; import java.io.FileInp ...
- 深入理解IoC和DI
本文章转载自: https://segmentfault.com/a/1190000005602011 最近在研究php的lumen框架和phalcon框架,这两个框架的底层架构都用到了IoC,DI, ...
- 【Unity Shader】UnityCG.cginc中一些常用的函数
// 摄像机方向(视角方向) float3 WorldSpaceViewDir(float4 v) // 根据模型空间中的顶点坐标 得到 (世界空间)从这个点到摄像机的观察方向 float3 Unit ...
- am335x SPI spi_d0, spi_d1 out, in 模式设定
AM335x SPI DO DI 的模式 参考: https://www.deyisupport.com/question_answer/dsp_arm/sitara_arm/f/25/t/13826 ...
- Android—— Fragment 真正的完全解析(上)(转)
转载请标明出处:http://blog.csdn.net/lmj623565791/article/details/37970961 自从Fragment出现,曾经有段时间,感觉大家谈什么都能跟Fra ...
- WCF 几种错误
1.错误 SOAP 的安全协商失败 SOAP Message=X.509 证书 CN=qq-PC 不在被信任的人的存储中. 将整数导入到配置文件指定的存储区中的受信任人. 2.从另一方收到未进行安 ...