Recursive XML Parser in C



Click here for larger image

Environment: Windows compiler for the GUI, ANSI C for the XML Parser.

The idea of this project was simply to write a basic XML parser in ANSI C for portability. The parser is reasonably forgiving as I have only a fairly rudimentary knowledge about XML and wanted to keep the code reasonably straight forward.

I then decided as an example application I'd write a simple GUI for demonstrative purposes, I decided against heavyweight MFC classes and wrote the GUI in C rather than C++ for reasons of consistency and the fact that the static nature of traditional windows programming does not lend it easily to object orientation. The GUI saves options to an XML file at termination (Options.xml) and allows you to drag and drop files onto the GUI for parsing. It consists of a rich edit window and a tree view.

When XML has been entered into the edit box and Parse selected from the menu the tree view will be updated. After the tree view has been updated you can select items in the tree view and it should also select the appropriate text in the edit window.

Note: Currently you need to reparse when you have updated the edit window before you can rely on the tree control being updated, I haven't yet had a chance to automatically update the tree control when updates occur.

There are one are two bugs which need ironing out (nobodys perfect!), if enough people spot them I'll have a look at them.

Downloads

Download demo project - 22.2 Kb
Download source - 29.2 Kb


Comments

  • There are no comments yet. Be the first to comment!

Leave a Comment
  • Your email address will not be published. All fields are required.

Top White Papers and Webcasts

  • Live Event Date: March 19, 2015 @ 1:00 p.m. ET / 10:00 a.m. PT The 2015 Enterprise Mobile Application Survey asked 250 mobility professionals what their biggest mobile challenges are, how many employees they are equipping with mobile apps, and their methods for driving value with mobility. Join Dan Woods, Editor and CTO of CITO Research, and Alan Murray, SVP of Products at Apperian, as they break down the results of this survey and discuss how enterprises are using mobile application management and private …

  • Live Event Date: March 18, 2015 @ 2:00 p.m. ET / 11:00 a.m. PT Content is king, and businesses of all kinds want to leverage content to demonstrate their business benefits to customers, prospects, and partners alike. With new media options – 4K, 3D, HTML, and new devices – all becoming a part of your communications strategy, what tools are there that can speed time to value while reducing learning curve and duplication of efforts? Check out this upcoming eSeminar to learn how working with Adobe …

Most Popular Programming Stories

More for Developers

RSS Feeds

Thanks for your registration, follow us on our social networks to keep up-to-date