#include void processNode(xmlTextReaderPtr); int streamFile(char*); int main(int argc, char *argv[]) { streamFile(argv[1]); } void processNode(xmlTextReaderPtr reader) { /* handling of a node in the tree */ } int streamFile(char *filename) { xmlTextReaderPtr reader = xmlNewTextReaderFilename(filename); if (reader != NULL) { int ret = xmlTextReaderRead(reader); while (ret == 1) { processNode(reader); ret = xmlTextReaderRead(reader); } xmlFreeTextReader(reader); if (ret != 0) printf("%s : failed to parse\n", filename); } else printf("Unable to open %s\n", filename); }