[已关闭问题] 截取字符串的问题
提问时间: 2008-07-14 11:13
悬赏分:10 提问时间2008/7/14 11:13:11 问题为何被关闭 浏览:129 次

现在有一个字符串内容如下:   

<Device Id="2" Name="数字">
      <ChCode Freq="698000" ServiceID="106" VideoPID="1060" AudioPID="1061" PrgName="北京电视台-6" />
      <ChCode Freq="746000" ServiceID="217" VideoPID="2170" AudioPID="2171" PrgName="劲爆体育" />
    </Device>

    <Device Id="3" Name="南京模拟">
      <ChCode Freq="256250" ServiceID="" VideoPID="" AudioPID="" PrgName="150000" />
    </Device>

    <Device Id="1" Name="模拟XP">

 

备注:这个XML格式的字符串是动态生成的,是不固定的。
    </Device>

现在我需删除<Device>节点下没有子节点的项,如,操作后结果如下

<Device Id="2" Name="数字">
      <ChCode Freq="698000" ServiceID="106" VideoPID="1060" AudioPID="1061" PrgName="北京电视台-6" />
      <ChCode Freq="746000" ServiceID="217" VideoPID="2170" AudioPID="2171" PrgName="劲爆体育" />
    </Device>

    <Device Id="3" Name="南京模拟">
      <ChCode Freq="256250" ServiceID="" VideoPID="" AudioPID="" PrgName="150000" />
    </Device>

 


提问者:金鱼 - 菜鸟二级

问题补充:大家看一下 如果保存成XML,但是这样的XML是格式错误的。
因为找不到父节点。
我建议用正则看一下是否合适。

(3)
你这个是个字符串?怎么看都像个XML啊。。XML的话倒是很好办 String的话就很麻烦了
1个月前   回答者:Allie - 小虾三级
转成xml处理不可以吗?
1个月前   回答者:混口饭吃 - 初学一级
用XmlDocument.Load将字符串加载为Document对象,然后再遍历该对象的所有子元素,如果子元素的HasChildNodes为false,则删除该元素
1个月前   回答者:麒麟.NET - 小虾三级
1个月前   Allie :
既然是string 正则你参考下吧 
Regex reg=new Regex(@" <Device[^>]*>\s*</Device>");
string temp = reg.Replace(source,"");
   您需要登录以后才能回答!
我的问题    我要提问


快到期问题

> 问题排行榜

有不合适内容,建议去除