Domanda
Ho usato parecchio l'API StAX in Java e trovo che sia un modo abbastanza pulito di gestire i file XML.Esiste una libreria equivalente che potrei utilizzare per eseguire elaborazioni simili in C?
Soluzione
libxml è una libreria XML molto utilizzata e documentata per C, che fornisce un'API SAX. espatriato è un altro, ma nella mia esperienza non è così ben documentato.
Altri suggerimenti
Ho utilizzato Expat in modo piuttosto estensivo: mi piace per la sua semplicità e il suo ingombro ridotto.
Expat fa StAX
#include "expat.h"`
VRM_parser = XML_ParserCreate("ISO-8859-1");
XML_SetElementHandler(VRM_parser, CbStartTagHandler, CbEndTagHandler);
XML_Parse(VRM_parser, text, strlen(text), 0); // start of XML
XML_Parse(VRM_parser, text, strlen(text), 0); // more XML
XML_Parse(VRM_parser, text, strlen(text), 0); // more XML
XML_Parse(VRM_parser, text, strlen(text), 0); // more XML
XML_Parse(VRM_parser, "", 0, 1); // to finish parsing
Eh?No, Expat non esegue Stax e l'esempio di codice lo conferma.
Forse volevi dire che fa qualcosa di simile al SAX?
Se non sei contrario al C++ allora prova Lama
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow