怎么找到一个xml文件当中所有的空元素,并删除

如何找到一个xml文件当中所有的空元素,并删除?
形如:

<tag></tag>
<tag/>

<abc>
    <tag>
    </tag>
</abc>

这几种情况下的tag标签都是我想要检查出来并删除的。
用C#如何能做到呢? 需要用到XPath吗?
谢谢
------解决思路----------------------
判断一下里面的值,然后移除节点就可以了吧
------解决思路----------------------
你应该使用操作xml的类,using system.xml
不要用处理字符串的思路去处理这东西,会累死的
------解决思路----------------------
你这个要反向递归,找到最内部的节点,然后开始移除空的,向上又要移除空的……感觉这个挺麻烦的……
------解决思路----------------------
使用Linq  to  xml  找出这些节点,然后移除,之后再重新保存。