在用ClientDataSet显示XML数据时,普通的XML文档无法打开,只有用XMLMap(Tool菜单下的)这个工具先将XML文档转换成符合ClientDataSet的格式,同时还要保存一个.XTR的文件,这样
将XMLDataSetProvider中的XMLFile和TransmationFile同时设置为转换后的xml和xtr文件,
再设置ClientDataSet的Provider才能正确显示数据.
现在问题是:有什么办法可以用程序将普通的XML文档转换成符合ClientDataSet的格式的XML
文档呢?非要用XMLMap吗?我们不可能每个XML文档都用它来转一遍吧!
谢谢关注!

解决方案 »

  1.   

    http://expert.csdn.net/Expert/topic/1623/1623601.xml?temp=8.837527E-02
    我以前的问题不知道对你有没有帮助!
      

  2.   

    "符合ClientDataSet的格式的XML"其实是转换成DataSet的xml. 你要是希望在DataSet与xml间通讯需要XML Mapper建立一个转换文件, Delphi会依此进行xml与dataset间的转换(告诉Delphi xml中的哪个元素对应dataset中的哪个字段). 即便如此, 也建议你用TXMLTransformClient来代替TClientDataSet, 它其实就是TClientDataSet与TXMLTransform的合体. 如果你只是想把xml简单的显示出来, 可以使用Internet下的TXMLDocument.
      

  3.   

    我是要从XML中获取数据到DataDet中,这样我的报表控件才能从DataSet中读取并显示!
    看来只有自己写一个转换程序了。
      

  4.   

    我是要从XML中获取数据到DataDet中,这样我的报表控件才能从DataSet中读取并显示!
    看来只有自己写一个转换程序了==================================
    我也是用你说的方法处理的,通过读取XML数据形成