You are viewing a plain text version of this content. The canonical link for it is here.
Posted to c-users@xerces.apache.org by Ben Griffin <be...@redsnapper.net> on 2012/11/01 13:12:07 UTC
Re: Newbie - Parsing XML String?
There is an example that does that.
The code I use is something like this:
//Load a DOMDocument from a utf-8 string
const std::string xmlfile; //The source UTF-8 encoded xml file
DOMDocument* rslt = NULL; //The resulting DOMDocument
string err_message; //For parse errors
if ( ! xmlfile.empty() ) {
const XMLCh xml_str[] = { chLatin_X, chLatin_M, chLatin_L, chNull };
AutoRelease<DOMLSInput> input(((DOMImplementationLS*)impl)->createLSInput()); //impl is from a getDOMImplementation
XMLByte* xmlraw = (XMLByte*)(xmlfile.c_str());
MemBufInputSource* mbis = new MemBufInputSource(xmlraw,xmlfile.size(), xml_str);
mbis->setCopyBufToStream(false);
input->setByteStream(mbis);
input->setEncoding(XMLUni::fgUTF8EncodingString);
try {
rslt = parser->parse(input); //parser is a DOMLSParser*
}
catch (DOMLSException e) {
Manager::transcode(e.getMessage(),err_message); //use your preferred transcoder here
}
catch (DOMException e) {
Manager::transcode(e.getMessage(),err_message); //use your preferred transcoder here.
}
catch ( ... ) {
err_message = "Some load error occured with an xml file.";
}
delete mbis; mbis=NULL;
}
>
> Hi Folks:
>
> XercesDOMParser's parse() seems to require a file name for an argument.
>
> I want to parse XML extracted from in an SQL blob. I'm currently
> extracting the XML into an std::string. I can convert it to an std::wstring
> or feed it to a stream.
>
> How do I parse XML that's in memory, and not in a file?
>
> Thanks
> Larry
>
>
> --
> View this message in context: http://old.nabble.com/Newbie---Parsing-XML-String--tp34626020p34626020.html
> Sent from the Xerces - C - Users mailing list archive at Nabble.com.
>
Re: Newbie - Parsing XML String?
Posted by Larry Lindstrom <la...@hotmail.com>.
Thanks Alberto and Ben:
That works.
Larry
--
View this message in context: http://old.nabble.com/Newbie---Parsing-XML-String--tp34626020p34631407.html
Sent from the Xerces - C - Users mailing list archive at Nabble.com.