B
barton
Unregistered / Unconfirmed
GUEST, unregistred user!
我决计在我的系统中全面使用XML文档格式。我发现使用XML有四大好处:
1.可以传递数据,结合TCP/IP,在不同的主机间、进程间,方便至极。
2.与DOM转换,可以在主程与DLL间传递DOM节点对象,也是非常方便;
3.通过DOM节点来建立和修改企业逻辑中的对象,不需要传递一大堆参数,简直棒极了!
4.数据模块与应用模块分离,通过XML标准来对接,你知道会有什么效果吗?
呵呵,三层就出来了。
可是我遇到了重大问题:是否有可用的解析器?
a.我用过TurboPower的XML Partner professional,使用起来非常方便,但不支持中文
解析;
b.我也用过XDOM 2.3.15,源程序代码超过80000行,仍然不能解析中文;
c.Micosoft XML 3解析器显然支持中文,但如何在Delphi中使用?我注册了MSXML3.DLL,
但仍然在Import ActiveX中找不到。
d:于是我使用Delphi6中的XMLDocument控件,可是竞然不支持SelectNode方法,而MSXML是
一定支持的,再说,现在D6敢用吗?
我知道可以修改来实现,可是,我不能保证我修改后的代码符合XML1.0标准。
此外,我在传递二进制数据时使用一个叫“流堆”的东西,在XML文档中通过某个元素注明
流数据的ID,接收方从“流堆”中取这个流就行了。
可是这必须依赖于建立第二条TCP连接来使发送方与接收方的流数据同步。
有更好的方法吗?CDATASection似乎不行.
1.可以传递数据,结合TCP/IP,在不同的主机间、进程间,方便至极。
2.与DOM转换,可以在主程与DLL间传递DOM节点对象,也是非常方便;
3.通过DOM节点来建立和修改企业逻辑中的对象,不需要传递一大堆参数,简直棒极了!
4.数据模块与应用模块分离,通过XML标准来对接,你知道会有什么效果吗?
呵呵,三层就出来了。
可是我遇到了重大问题:是否有可用的解析器?
a.我用过TurboPower的XML Partner professional,使用起来非常方便,但不支持中文
解析;
b.我也用过XDOM 2.3.15,源程序代码超过80000行,仍然不能解析中文;
c.Micosoft XML 3解析器显然支持中文,但如何在Delphi中使用?我注册了MSXML3.DLL,
但仍然在Import ActiveX中找不到。
d:于是我使用Delphi6中的XMLDocument控件,可是竞然不支持SelectNode方法,而MSXML是
一定支持的,再说,现在D6敢用吗?
我知道可以修改来实现,可是,我不能保证我修改后的代码符合XML1.0标准。
此外,我在传递二进制数据时使用一个叫“流堆”的东西,在XML文档中通过某个元素注明
流数据的ID,接收方从“流堆”中取这个流就行了。
可是这必须依赖于建立第二条TCP连接来使发送方与接收方的流数据同步。
有更好的方法吗?CDATASection似乎不行.