从 MSXML 迁移到 Xerces

发布于 2024-08-17 14:38:39 字数 162 浏览 6 评论 0原文

我计划将我的应用程序从 Windows 移植到 Linux,目前我的应用程序使用 MSXML 进行 XML 解析。我决定使用 Xerces XML 解析器来提供跨平台解决方案。我的代码太大,我不想为了这个移植目的而触及代码的所有内部部分,因为它可能会破坏一些功能。 任何人都可以建议我最好的方法来做到这一点。

I am planning to port my application from Windows to Linux, currently my application uses MSXML for XML parsing. I have decided to use Xerces XML parser to provide a cross platform solution. My code size is too big and I do not want to touch all the internal part of the code for this porting purpose as it might break some of the functionality.
Can anybody suggest me the best way to do this.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

○愚か者の日 2024-08-24 14:38:39

取决于你对“内部部分”的意思;一种相当可扩展的方法可以通过一些步骤来完成此操作(对您的应用程序进行测试将很有帮助,这样您就可以发现何时出现问题):

  • 为您使用的所有 XML 操作创建一个接口
  • 提供使用 MSXML 的该接口的
  • 实现您的所有代码都与接口交互,而不是直接与 MSXML 交互。如果界面设计得好,这可能只是彻底的查找/替换,但是
  • 现在可能需要更多的工作,一切都应该仍然可以工作,但好处是它与实际的 xml 逻辑分离,
  • 为界面,现在使用 Xercesc

depends on what you mean with 'the internal part'; one pretty extensible way to do this would go in some steps (having tests for your application would be beneficial so you can spot when something goes wrong):

  • create an interface for all XML operations you use
  • provide an implementation of that interface that uses MSXML
  • make all your code talk to the interface instead of directly to MSXML. If you designed the interface well, this could be a matter of just a thorough find/replace, but more work might be needed
  • now everything should still be working, but with the benefit that it's seperated from the actual xml logic
  • provide another implementation for the interface, now using Xercesc
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文