如题,一个xml普通格式的文件(非datapacket格式) 
因为得让用户转换呀,很麻烦 
就是想弄进dataset里方便查询修改 
XMLDocument解析我会,或者说下怎么XMLDocument查询定位? 
要修改数据…… 
或者一种dataset直接读取(非datapacket)的xml文件也可以 
第三方控件也可以…… 

xml文件结构
<lists>
    <list>
       <id>1</id>
       <name>a</name>
    </list>
    <list>
        <id>2</id>
        <name>b</name>
    </list>
    …………
<lists>
解析什么的都出来了,现在我只能一条条的往下浏览记录
我其实就是想搞个查询(能dataset最好呀)
xpath会一点,但是不熟悉
用xpath也可以
关键是能够在一个edit什么的地方输入一段数据,进行查询
比如edit里输b,那么
<list>
    <id>2</id>
    <name>b</name>
</list>
这段的内容直接到memo里……    
     
 
 

解决方案 »

  1.   

    你要会xpath,这就是很简单的事情了
      

  2.   

    xpath会一点,但是不熟悉 
    用xpath也可以 
    关键是能够在一个edit什么的地方输入一段数据,进行查询 
    比如edit里输b,button按下那么 
    <list> 
         <id>2 </id> 
         <name>b </name> 
    </list> 
    这段的内容直接到memo里…… 
    button怎么写?
      

  3.   

    55555555555
    现在数据还少,等我加到100多条,那就麻烦了
    求救各位大哥、大姐
    用xpath
    我上面的需求怎么实现?
      

  4.   

    LZ撒谎,既然会用IXMLDocument解析不可能不会不会查找和修改。遍历而已。
      

  5.   

    ………………
    我真的不会,xml资料太少了,我也就按照网上几个简单的例子弄出了解析和修改
    (现在只能第一个记录、最后一个记录、上一个记录、下一个记录、增加新记录、修改当前记录、删除当前记录)
    但是查询呢?
    xpath我也实现了静态查询(比如让xpath查询id=2的数据,把id=2的name显示出来)
    但是问题是,我需要的是动态查询,id的值由edit输入,查询edit里的值,然后一次所需的id的内容全显示出来(能出来,我就能修改了)
    xml我只是新手,很多不懂的,能实现与懂完全是2码事情,我们班都有人过4级计算机的,软件还不是我帮做
    希望会做的大哥大姐帮帮忙,小弟在此谢过
      

  6.   


    var
      xml:IXMLDOMDocument;
      xmlElement:IXMLDOMElement;
    begin
      xml:=CoDOMDocument.Create;
      xml.load('testList.xml');
      xmlElement:=xml.selectSingleNode('/lists/list/name[text()='''+Edit1.Text+''']') as IXMLDOMElement;
      Memo1.Text:=xmlElement.parentNode.xml;
      xml:=nil;
    end;
      

  7.   

    别忘了 uses  msxml; 
      

  8.   

    谢谢楼上的,我5.1后就一直忙毕业设计,都差点忘了我的这个小程序了,还好csdn的邮件提醒了,再次感谢
    我那个小程序不能查询,所以只能自己用,改进下可以给朋友用了,hoho