You are viewing a plain text version of this content. The canonical link for it is here.
Posted to c-dev@xerces.apache.org by radada <pa...@yahoo.fr> on 2009/04/23 14:16:36 UTC
Specifying XML Encoding
Hi there again : ))
I've been searching on how to set the XML encoding of the XML declaration
output file in xerces 3.0 (C++)
In the previous versions, I had to call the setEncoding method of the
DOMDocument, but I can't find it now.
As a result, the XML files have the "UTF-8" encoding in the declaration
while I need them to be in "ISO-8859-1".
Thx a lot guys.
--
View this message in context: http://www.nabble.com/Specifying-XML-Encoding-tp23195708p23195708.html
Sent from the Xerces - C - Dev mailing list archive at Nabble.com.
---------------------------------------------------------------------
To unsubscribe, e-mail: c-dev-unsubscribe@xerces.apache.org
For additional commands, e-mail: c-dev-help@xerces.apache.org
Re: Specifying XML Encoding
Posted by Alberto Massari <am...@datadirect.com>.
Use this code:
DOMLSOutput* theOutput = ((DOMImplementationLS*)impl)->createLSOutput();
XMLString::transcode("ISO-8859-1", tempStr, 99);
theOutput->setEncoding(tempStr);
MemBufFormatTarget memTarget;
theOutput->setByteStream(&memTarget);
theSerializer->write(node, theOutput);
result=memTarget.getRawBuffer();
// remember that the result will be deallocated as soon as you destroy
memTarget
Alberto
radada wrote:
> Hi there again,
>
> I'm still stuck with my problem... This time, I used the Alberto code, which
> would be :
>
> _________________________________________________________________________________
> XMLCh tempStr[100];
> XMLString::transcode("LS", tempStr, 99);
> DOMImplementation *impl =
> DOMImplementationRegistry::getDOMImplementation(tempStr);
> DOMLSSerializer* theSerializer =
> ((DOMImplementationLS*)impl)->createLSSerializer();
> DOMLSOutput* theOutput = ((DOMImplementationLS*)impl)->createLSOutput();
> XMLString::transcode(path, tempStr, 99);
> theOutput->setSystemId(tempStr);
> XMLString::transcode("ISO-8859-1", tempStr, 99);
> theOutput->setEncoding(tempStr);
>
> try {
> theSerializer->write(node, theOutput); }
> _________________________________________________________________________________
>
>
> I perfectly works to write into a file...
> But I would like the get the XML content as an char* stream.
> The thing is (I surely missed something...), the DOMLSOutput class only
> implements a getByteStream method, which returns a XMLFormatTarget object.
> But the getRawBuffer(), which returns a XMLByte* stream is only implemented
> in the MemBufFormatTarget...
> I can't use the writeToString method since the stream returned has an
> "UTF16" encoding (which is logical because the writeToString method does not
> need the DOMLSOutput object in which I used the setEncoding method, if you
> still follow me ^^)...
>
> So, in a few words (haha nice one after all the crap above : p) : how can I
> return a char* stream that would have an encoding set to "ISO-8859-1" (using
> the DOMLSOutput I guess)...
>
> Thanks a lot... again : )
>
>
> radada wrote:
>
>> OKi doki, I'll try that tomorrow at work.
>> Thanks a lot for your precious help Alberto : )
>>
>>
>> Alberto Massari wrote:
>>
>>> writeToURI is simply a shorthand for creating a DOMLSOutput, calling
>>> setSystemId on it, and invoking write().
>>> Just add the setSystemId call to your code, and change writeToURI into
>>> write().
>>>
>>> Alberto
>>>
>>>
>>> radada wrote:
>>>
>>>> Lol I just saw that I wans't using the DOMLSOutput because I used the
>>>> writeToUri method...
>>>> Back to square one : how can I do it? Using write method and then get
>>>> the
>>>> string back with another method?
>>>> Thx...
>>>>
>>>>
>>>> radada wrote:
>>>>
>>>>
>>>>> Hi and thx
>>>>>
>>>>> here is the code for the serialisation :
>>>>>
>>>>> XMLCh tempStr[100];
>>>>> XMLString::transcode("LS", tempStr, 99);
>>>>> DOMImplementation *impl =
>>>>> DOMImplementationRegistry::getDOMImplementation(tempStr);
>>>>> DOMLSSerializer* theSerializer =
>>>>> ((DOMImplementationLS*)impl)->createLSSerializer();
>>>>>
>>>>> DOMLSOutput* theOutput =
>>>>> ((DOMImplementationLS*)impl)->createLSOutput();
>>>>> theOutput->setEncoding((XMLCh *)"ISO-8859-1");
>>>>>
>>>>> try
>>>>> {
>>>>> theSerializer->writeToURI(node, XMLString::transcode(path));
>>>>> }
>>>>>
>>>>>
>>>>> I'll try with the XMLString::transcode to check...
>>>>>
>>>>>
>>>>>
>>>>> Alberto Massari wrote:
>>>>>
>>>>>
>>>>>> First of all, you cannot simply cast a char* to be a XMLCh*, but you
>>>>>> need to convert it using XMLString::transcode (and releasing the
>>>>>> string
>>>>>> after that). Then, how are you serializing the document?
>>>>>>
>>>>>> Alberto
>>>>>>
>>>>>> radada wrote:
>>>>>>
>>>>>>
>>>>>>> Hi Alberto and thx again for answering : )
>>>>>>>
>>>>>>> I tried to do it using this code :
>>>>>>>
>>>>>>> DOMLSOutput* theOutput =
>>>>>>> ((DOMImplementationLS*)impl)->createLSOutput();
>>>>>>> theOutput->setEncoding((XMLCh *)"ISO-8859-1");
>>>>>>>
>>>>>>> but the XML files declaration stil was <?xml version="1.0"
>>>>>>> encoding="UTF-8"
>>>>>>> standalone="no" ?>. How's that?
>>>>>>> Thx again for your help.
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> Alberto Massari wrote:
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>> In the DOML3 specifications, the encoding is set in the DOMLSOutput
>>>>>>>> object that is passed to DOMLSSerializer::write.
>>>>>>>>
>>>>>>>> Alberto
>>>>>>>>
>>>>>>>> radada wrote:
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>> Hi there again : ))
>>>>>>>>>
>>>>>>>>> I've been searching on how to set the XML encoding of the XML
>>>>>>>>> declaration
>>>>>>>>> output file in xerces 3.0 (C++)
>>>>>>>>> In the previous versions, I had to call the setEncoding method of
>>>>>>>>> the
>>>>>>>>> DOMDocument, but I can't find it now.
>>>>>>>>> As a result, the XML files have the "UTF-8" encoding in the
>>>>>>>>> declaration
>>>>>>>>> while I need them to be in "ISO-8859-1".
>>>>>>>>>
>>>>>>>>> Thx a lot guys.
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>> ---------------------------------------------------------------------
>>>>>>>> To unsubscribe, e-mail: c-dev-unsubscribe@xerces.apache.org
>>>>>>>> For additional commands, e-mail: c-dev-help@xerces.apache.org
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>> ---------------------------------------------------------------------
>>>>>> To unsubscribe, e-mail: c-dev-unsubscribe@xerces.apache.org
>>>>>> For additional commands, e-mail: c-dev-help@xerces.apache.org
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>
>>>>>
>>>>
>>>>
>>> ---------------------------------------------------------------------
>>> To unsubscribe, e-mail: c-dev-unsubscribe@xerces.apache.org
>>> For additional commands, e-mail: c-dev-help@xerces.apache.org
>>>
>>>
>>>
>>>
>>
>
>
---------------------------------------------------------------------
To unsubscribe, e-mail: c-dev-unsubscribe@xerces.apache.org
For additional commands, e-mail: c-dev-help@xerces.apache.org
Re: Specifying XML Encoding
Posted by radada <pa...@yahoo.fr>.
Hi there again,
I'm still stuck with my problem... This time, I used the Alberto code, which
would be :
_________________________________________________________________________________
XMLCh tempStr[100];
XMLString::transcode("LS", tempStr, 99);
DOMImplementation *impl =
DOMImplementationRegistry::getDOMImplementation(tempStr);
DOMLSSerializer* theSerializer =
((DOMImplementationLS*)impl)->createLSSerializer();
DOMLSOutput* theOutput = ((DOMImplementationLS*)impl)->createLSOutput();
XMLString::transcode(path, tempStr, 99);
theOutput->setSystemId(tempStr);
XMLString::transcode("ISO-8859-1", tempStr, 99);
theOutput->setEncoding(tempStr);
try {
theSerializer->write(node, theOutput); }
_________________________________________________________________________________
I perfectly works to write into a file...
But I would like the get the XML content as an char* stream.
The thing is (I surely missed something...), the DOMLSOutput class only
implements a getByteStream method, which returns a XMLFormatTarget object.
But the getRawBuffer(), which returns a XMLByte* stream is only implemented
in the MemBufFormatTarget...
I can't use the writeToString method since the stream returned has an
"UTF16" encoding (which is logical because the writeToString method does not
need the DOMLSOutput object in which I used the setEncoding method, if you
still follow me ^^)...
So, in a few words (haha nice one after all the crap above : p) : how can I
return a char* stream that would have an encoding set to "ISO-8859-1" (using
the DOMLSOutput I guess)...
Thanks a lot... again : )
radada wrote:
>
> OKi doki, I'll try that tomorrow at work.
> Thanks a lot for your precious help Alberto : )
>
>
> Alberto Massari wrote:
>>
>> writeToURI is simply a shorthand for creating a DOMLSOutput, calling
>> setSystemId on it, and invoking write().
>> Just add the setSystemId call to your code, and change writeToURI into
>> write().
>>
>> Alberto
>>
>>
>> radada wrote:
>>> Lol I just saw that I wans't using the DOMLSOutput because I used the
>>> writeToUri method...
>>> Back to square one : how can I do it? Using write method and then get
>>> the
>>> string back with another method?
>>> Thx...
>>>
>>>
>>> radada wrote:
>>>
>>>> Hi and thx
>>>>
>>>> here is the code for the serialisation :
>>>>
>>>> XMLCh tempStr[100];
>>>> XMLString::transcode("LS", tempStr, 99);
>>>> DOMImplementation *impl =
>>>> DOMImplementationRegistry::getDOMImplementation(tempStr);
>>>> DOMLSSerializer* theSerializer =
>>>> ((DOMImplementationLS*)impl)->createLSSerializer();
>>>>
>>>> DOMLSOutput* theOutput =
>>>> ((DOMImplementationLS*)impl)->createLSOutput();
>>>> theOutput->setEncoding((XMLCh *)"ISO-8859-1");
>>>>
>>>> try
>>>> {
>>>> theSerializer->writeToURI(node, XMLString::transcode(path));
>>>> }
>>>>
>>>>
>>>> I'll try with the XMLString::transcode to check...
>>>>
>>>>
>>>>
>>>> Alberto Massari wrote:
>>>>
>>>>> First of all, you cannot simply cast a char* to be a XMLCh*, but you
>>>>> need to convert it using XMLString::transcode (and releasing the
>>>>> string
>>>>> after that). Then, how are you serializing the document?
>>>>>
>>>>> Alberto
>>>>>
>>>>> radada wrote:
>>>>>
>>>>>> Hi Alberto and thx again for answering : )
>>>>>>
>>>>>> I tried to do it using this code :
>>>>>>
>>>>>> DOMLSOutput* theOutput =
>>>>>> ((DOMImplementationLS*)impl)->createLSOutput();
>>>>>> theOutput->setEncoding((XMLCh *)"ISO-8859-1");
>>>>>>
>>>>>> but the XML files declaration stil was <?xml version="1.0"
>>>>>> encoding="UTF-8"
>>>>>> standalone="no" ?>. How's that?
>>>>>> Thx again for your help.
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>> Alberto Massari wrote:
>>>>>>
>>>>>>
>>>>>>> In the DOML3 specifications, the encoding is set in the DOMLSOutput
>>>>>>> object that is passed to DOMLSSerializer::write.
>>>>>>>
>>>>>>> Alberto
>>>>>>>
>>>>>>> radada wrote:
>>>>>>>
>>>>>>>
>>>>>>>> Hi there again : ))
>>>>>>>>
>>>>>>>> I've been searching on how to set the XML encoding of the XML
>>>>>>>> declaration
>>>>>>>> output file in xerces 3.0 (C++)
>>>>>>>> In the previous versions, I had to call the setEncoding method of
>>>>>>>> the
>>>>>>>> DOMDocument, but I can't find it now.
>>>>>>>> As a result, the XML files have the "UTF-8" encoding in the
>>>>>>>> declaration
>>>>>>>> while I need them to be in "ISO-8859-1".
>>>>>>>>
>>>>>>>> Thx a lot guys.
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>> ---------------------------------------------------------------------
>>>>>>> To unsubscribe, e-mail: c-dev-unsubscribe@xerces.apache.org
>>>>>>> For additional commands, e-mail: c-dev-help@xerces.apache.org
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>
>>>>>>
>>>>> ---------------------------------------------------------------------
>>>>> To unsubscribe, e-mail: c-dev-unsubscribe@xerces.apache.org
>>>>> For additional commands, e-mail: c-dev-help@xerces.apache.org
>>>>>
>>>>>
>>>>>
>>>>>
>>>>
>>>
>>>
>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: c-dev-unsubscribe@xerces.apache.org
>> For additional commands, e-mail: c-dev-help@xerces.apache.org
>>
>>
>>
>
>
--
View this message in context: http://www.nabble.com/Specifying-XML-Encoding-tp23195708p23312191.html
Sent from the Xerces - C - Dev mailing list archive at Nabble.com.
---------------------------------------------------------------------
To unsubscribe, e-mail: c-dev-unsubscribe@xerces.apache.org
For additional commands, e-mail: c-dev-help@xerces.apache.org
Re: Specifying XML Encoding
Posted by radada <pa...@yahoo.fr>.
OKi doki, I'll try that tomorrow at work.
Thanks a lot for your precious help Alberto : )
Alberto Massari wrote:
>
> writeToURI is simply a shorthand for creating a DOMLSOutput, calling
> setSystemId on it, and invoking write().
> Just add the setSystemId call to your code, and change writeToURI into
> write().
>
> Alberto
>
>
> radada wrote:
>> Lol I just saw that I wans't using the DOMLSOutput because I used the
>> writeToUri method...
>> Back to square one : how can I do it? Using write method and then get the
>> string back with another method?
>> Thx...
>>
>>
>> radada wrote:
>>
>>> Hi and thx
>>>
>>> here is the code for the serialisation :
>>>
>>> XMLCh tempStr[100];
>>> XMLString::transcode("LS", tempStr, 99);
>>> DOMImplementation *impl =
>>> DOMImplementationRegistry::getDOMImplementation(tempStr);
>>> DOMLSSerializer* theSerializer =
>>> ((DOMImplementationLS*)impl)->createLSSerializer();
>>>
>>> DOMLSOutput* theOutput =
>>> ((DOMImplementationLS*)impl)->createLSOutput();
>>> theOutput->setEncoding((XMLCh *)"ISO-8859-1");
>>>
>>> try
>>> {
>>> theSerializer->writeToURI(node, XMLString::transcode(path));
>>> }
>>>
>>>
>>> I'll try with the XMLString::transcode to check...
>>>
>>>
>>>
>>> Alberto Massari wrote:
>>>
>>>> First of all, you cannot simply cast a char* to be a XMLCh*, but you
>>>> need to convert it using XMLString::transcode (and releasing the string
>>>> after that). Then, how are you serializing the document?
>>>>
>>>> Alberto
>>>>
>>>> radada wrote:
>>>>
>>>>> Hi Alberto and thx again for answering : )
>>>>>
>>>>> I tried to do it using this code :
>>>>>
>>>>> DOMLSOutput* theOutput =
>>>>> ((DOMImplementationLS*)impl)->createLSOutput();
>>>>> theOutput->setEncoding((XMLCh *)"ISO-8859-1");
>>>>>
>>>>> but the XML files declaration stil was <?xml version="1.0"
>>>>> encoding="UTF-8"
>>>>> standalone="no" ?>. How's that?
>>>>> Thx again for your help.
>>>>>
>>>>>
>>>>>
>>>>>
>>>>> Alberto Massari wrote:
>>>>>
>>>>>
>>>>>> In the DOML3 specifications, the encoding is set in the DOMLSOutput
>>>>>> object that is passed to DOMLSSerializer::write.
>>>>>>
>>>>>> Alberto
>>>>>>
>>>>>> radada wrote:
>>>>>>
>>>>>>
>>>>>>> Hi there again : ))
>>>>>>>
>>>>>>> I've been searching on how to set the XML encoding of the XML
>>>>>>> declaration
>>>>>>> output file in xerces 3.0 (C++)
>>>>>>> In the previous versions, I had to call the setEncoding method of
>>>>>>> the
>>>>>>> DOMDocument, but I can't find it now.
>>>>>>> As a result, the XML files have the "UTF-8" encoding in the
>>>>>>> declaration
>>>>>>> while I need them to be in "ISO-8859-1".
>>>>>>>
>>>>>>> Thx a lot guys.
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>> ---------------------------------------------------------------------
>>>>>> To unsubscribe, e-mail: c-dev-unsubscribe@xerces.apache.org
>>>>>> For additional commands, e-mail: c-dev-help@xerces.apache.org
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>
>>>>>
>>>> ---------------------------------------------------------------------
>>>> To unsubscribe, e-mail: c-dev-unsubscribe@xerces.apache.org
>>>> For additional commands, e-mail: c-dev-help@xerces.apache.org
>>>>
>>>>
>>>>
>>>>
>>>
>>
>>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: c-dev-unsubscribe@xerces.apache.org
> For additional commands, e-mail: c-dev-help@xerces.apache.org
>
>
>
--
View this message in context: http://www.nabble.com/Specifying-XML-Encoding-tp23195708p23200551.html
Sent from the Xerces - C - Dev mailing list archive at Nabble.com.
---------------------------------------------------------------------
To unsubscribe, e-mail: c-dev-unsubscribe@xerces.apache.org
For additional commands, e-mail: c-dev-help@xerces.apache.org
Re: Specifying XML Encoding
Posted by Alberto Massari <am...@datadirect.com>.
writeToURI is simply a shorthand for creating a DOMLSOutput, calling
setSystemId on it, and invoking write().
Just add the setSystemId call to your code, and change writeToURI into
write().
Alberto
radada wrote:
> Lol I just saw that I wans't using the DOMLSOutput because I used the
> writeToUri method...
> Back to square one : how can I do it? Using write method and then get the
> string back with another method?
> Thx...
>
>
> radada wrote:
>
>> Hi and thx
>>
>> here is the code for the serialisation :
>>
>> XMLCh tempStr[100];
>> XMLString::transcode("LS", tempStr, 99);
>> DOMImplementation *impl =
>> DOMImplementationRegistry::getDOMImplementation(tempStr);
>> DOMLSSerializer* theSerializer =
>> ((DOMImplementationLS*)impl)->createLSSerializer();
>>
>> DOMLSOutput* theOutput =
>> ((DOMImplementationLS*)impl)->createLSOutput();
>> theOutput->setEncoding((XMLCh *)"ISO-8859-1");
>>
>> try
>> {
>> theSerializer->writeToURI(node, XMLString::transcode(path));
>> }
>>
>>
>> I'll try with the XMLString::transcode to check...
>>
>>
>>
>> Alberto Massari wrote:
>>
>>> First of all, you cannot simply cast a char* to be a XMLCh*, but you
>>> need to convert it using XMLString::transcode (and releasing the string
>>> after that). Then, how are you serializing the document?
>>>
>>> Alberto
>>>
>>> radada wrote:
>>>
>>>> Hi Alberto and thx again for answering : )
>>>>
>>>> I tried to do it using this code :
>>>>
>>>> DOMLSOutput* theOutput = ((DOMImplementationLS*)impl)->createLSOutput();
>>>> theOutput->setEncoding((XMLCh *)"ISO-8859-1");
>>>>
>>>> but the XML files declaration stil was <?xml version="1.0"
>>>> encoding="UTF-8"
>>>> standalone="no" ?>. How's that?
>>>> Thx again for your help.
>>>>
>>>>
>>>>
>>>>
>>>> Alberto Massari wrote:
>>>>
>>>>
>>>>> In the DOML3 specifications, the encoding is set in the DOMLSOutput
>>>>> object that is passed to DOMLSSerializer::write.
>>>>>
>>>>> Alberto
>>>>>
>>>>> radada wrote:
>>>>>
>>>>>
>>>>>> Hi there again : ))
>>>>>>
>>>>>> I've been searching on how to set the XML encoding of the XML
>>>>>> declaration
>>>>>> output file in xerces 3.0 (C++)
>>>>>> In the previous versions, I had to call the setEncoding method of the
>>>>>> DOMDocument, but I can't find it now.
>>>>>> As a result, the XML files have the "UTF-8" encoding in the
>>>>>> declaration
>>>>>> while I need them to be in "ISO-8859-1".
>>>>>>
>>>>>> Thx a lot guys.
>>>>>>
>>>>>>
>>>>>>
>>>>> ---------------------------------------------------------------------
>>>>> To unsubscribe, e-mail: c-dev-unsubscribe@xerces.apache.org
>>>>> For additional commands, e-mail: c-dev-help@xerces.apache.org
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>
>>>>
>>> ---------------------------------------------------------------------
>>> To unsubscribe, e-mail: c-dev-unsubscribe@xerces.apache.org
>>> For additional commands, e-mail: c-dev-help@xerces.apache.org
>>>
>>>
>>>
>>>
>>
>
>
---------------------------------------------------------------------
To unsubscribe, e-mail: c-dev-unsubscribe@xerces.apache.org
For additional commands, e-mail: c-dev-help@xerces.apache.org
Re: Specifying XML Encoding
Posted by radada <pa...@yahoo.fr>.
Lol I just saw that I wans't using the DOMLSOutput because I used the
writeToUri method...
Back to square one : how can I do it? Using write method and then get the
string back with another method?
Thx...
radada wrote:
>
> Hi and thx
>
> here is the code for the serialisation :
>
> XMLCh tempStr[100];
> XMLString::transcode("LS", tempStr, 99);
> DOMImplementation *impl =
> DOMImplementationRegistry::getDOMImplementation(tempStr);
> DOMLSSerializer* theSerializer =
> ((DOMImplementationLS*)impl)->createLSSerializer();
>
> DOMLSOutput* theOutput =
> ((DOMImplementationLS*)impl)->createLSOutput();
> theOutput->setEncoding((XMLCh *)"ISO-8859-1");
>
> try
> {
> theSerializer->writeToURI(node, XMLString::transcode(path));
> }
>
>
> I'll try with the XMLString::transcode to check...
>
>
>
> Alberto Massari wrote:
>>
>> First of all, you cannot simply cast a char* to be a XMLCh*, but you
>> need to convert it using XMLString::transcode (and releasing the string
>> after that). Then, how are you serializing the document?
>>
>> Alberto
>>
>> radada wrote:
>>> Hi Alberto and thx again for answering : )
>>>
>>> I tried to do it using this code :
>>>
>>> DOMLSOutput* theOutput = ((DOMImplementationLS*)impl)->createLSOutput();
>>> theOutput->setEncoding((XMLCh *)"ISO-8859-1");
>>>
>>> but the XML files declaration stil was <?xml version="1.0"
>>> encoding="UTF-8"
>>> standalone="no" ?>. How's that?
>>> Thx again for your help.
>>>
>>>
>>>
>>>
>>> Alberto Massari wrote:
>>>
>>>> In the DOML3 specifications, the encoding is set in the DOMLSOutput
>>>> object that is passed to DOMLSSerializer::write.
>>>>
>>>> Alberto
>>>>
>>>> radada wrote:
>>>>
>>>>> Hi there again : ))
>>>>>
>>>>> I've been searching on how to set the XML encoding of the XML
>>>>> declaration
>>>>> output file in xerces 3.0 (C++)
>>>>> In the previous versions, I had to call the setEncoding method of the
>>>>> DOMDocument, but I can't find it now.
>>>>> As a result, the XML files have the "UTF-8" encoding in the
>>>>> declaration
>>>>> while I need them to be in "ISO-8859-1".
>>>>>
>>>>> Thx a lot guys.
>>>>>
>>>>>
>>>> ---------------------------------------------------------------------
>>>> To unsubscribe, e-mail: c-dev-unsubscribe@xerces.apache.org
>>>> For additional commands, e-mail: c-dev-help@xerces.apache.org
>>>>
>>>>
>>>>
>>>>
>>>
>>>
>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: c-dev-unsubscribe@xerces.apache.org
>> For additional commands, e-mail: c-dev-help@xerces.apache.org
>>
>>
>>
>
>
--
View this message in context: http://www.nabble.com/Specifying-XML-Encoding-tp23195708p23197347.html
Sent from the Xerces - C - Dev mailing list archive at Nabble.com.
---------------------------------------------------------------------
To unsubscribe, e-mail: c-dev-unsubscribe@xerces.apache.org
For additional commands, e-mail: c-dev-help@xerces.apache.org
Re: Specifying XML Encoding
Posted by radada <pa...@yahoo.fr>.
Hi and thx
here is the code for the serialisation :
XMLCh tempStr[100];
XMLString::transcode("LS", tempStr, 99);
DOMImplementation *impl =
DOMImplementationRegistry::getDOMImplementation(tempStr);
DOMLSSerializer* theSerializer =
((DOMImplementationLS*)impl)->createLSSerializer();
DOMLSOutput* theOutput = ((DOMImplementationLS*)impl)->createLSOutput();
theOutput->setEncoding((XMLCh *)"ISO-8859-1");
try
{
theSerializer->writeToURI(node, XMLString::transcode(path));
}
I'll try with the XMLString::transcode to check...
Alberto Massari wrote:
>
> First of all, you cannot simply cast a char* to be a XMLCh*, but you
> need to convert it using XMLString::transcode (and releasing the string
> after that). Then, how are you serializing the document?
>
> Alberto
>
> radada wrote:
>> Hi Alberto and thx again for answering : )
>>
>> I tried to do it using this code :
>>
>> DOMLSOutput* theOutput = ((DOMImplementationLS*)impl)->createLSOutput();
>> theOutput->setEncoding((XMLCh *)"ISO-8859-1");
>>
>> but the XML files declaration stil was <?xml version="1.0"
>> encoding="UTF-8"
>> standalone="no" ?>. How's that?
>> Thx again for your help.
>>
>>
>>
>>
>> Alberto Massari wrote:
>>
>>> In the DOML3 specifications, the encoding is set in the DOMLSOutput
>>> object that is passed to DOMLSSerializer::write.
>>>
>>> Alberto
>>>
>>> radada wrote:
>>>
>>>> Hi there again : ))
>>>>
>>>> I've been searching on how to set the XML encoding of the XML
>>>> declaration
>>>> output file in xerces 3.0 (C++)
>>>> In the previous versions, I had to call the setEncoding method of the
>>>> DOMDocument, but I can't find it now.
>>>> As a result, the XML files have the "UTF-8" encoding in the declaration
>>>> while I need them to be in "ISO-8859-1".
>>>>
>>>> Thx a lot guys.
>>>>
>>>>
>>> ---------------------------------------------------------------------
>>> To unsubscribe, e-mail: c-dev-unsubscribe@xerces.apache.org
>>> For additional commands, e-mail: c-dev-help@xerces.apache.org
>>>
>>>
>>>
>>>
>>
>>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: c-dev-unsubscribe@xerces.apache.org
> For additional commands, e-mail: c-dev-help@xerces.apache.org
>
>
>
--
View this message in context: http://www.nabble.com/Specifying-XML-Encoding-tp23195708p23197345.html
Sent from the Xerces - C - Dev mailing list archive at Nabble.com.
---------------------------------------------------------------------
To unsubscribe, e-mail: c-dev-unsubscribe@xerces.apache.org
For additional commands, e-mail: c-dev-help@xerces.apache.org
Re: Specifying XML Encoding
Posted by Alberto Massari <am...@datadirect.com>.
First of all, you cannot simply cast a char* to be a XMLCh*, but you
need to convert it using XMLString::transcode (and releasing the string
after that). Then, how are you serializing the document?
Alberto
radada wrote:
> Hi Alberto and thx again for answering : )
>
> I tried to do it using this code :
>
> DOMLSOutput* theOutput = ((DOMImplementationLS*)impl)->createLSOutput();
> theOutput->setEncoding((XMLCh *)"ISO-8859-1");
>
> but the XML files declaration stil was <?xml version="1.0" encoding="UTF-8"
> standalone="no" ?>. How's that?
> Thx again for your help.
>
>
>
>
> Alberto Massari wrote:
>
>> In the DOML3 specifications, the encoding is set in the DOMLSOutput
>> object that is passed to DOMLSSerializer::write.
>>
>> Alberto
>>
>> radada wrote:
>>
>>> Hi there again : ))
>>>
>>> I've been searching on how to set the XML encoding of the XML declaration
>>> output file in xerces 3.0 (C++)
>>> In the previous versions, I had to call the setEncoding method of the
>>> DOMDocument, but I can't find it now.
>>> As a result, the XML files have the "UTF-8" encoding in the declaration
>>> while I need them to be in "ISO-8859-1".
>>>
>>> Thx a lot guys.
>>>
>>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: c-dev-unsubscribe@xerces.apache.org
>> For additional commands, e-mail: c-dev-help@xerces.apache.org
>>
>>
>>
>>
>
>
---------------------------------------------------------------------
To unsubscribe, e-mail: c-dev-unsubscribe@xerces.apache.org
For additional commands, e-mail: c-dev-help@xerces.apache.org
Re: Specifying XML Encoding
Posted by radada <pa...@yahoo.fr>.
Hi Alberto and thx again for answering : )
I tried to do it using this code :
DOMLSOutput* theOutput = ((DOMImplementationLS*)impl)->createLSOutput();
theOutput->setEncoding((XMLCh *)"ISO-8859-1");
but the XML files declaration stil was <?xml version="1.0" encoding="UTF-8"
standalone="no" ?>. How's that?
Thx again for your help.
Alberto Massari wrote:
>
> In the DOML3 specifications, the encoding is set in the DOMLSOutput
> object that is passed to DOMLSSerializer::write.
>
> Alberto
>
> radada wrote:
>> Hi there again : ))
>>
>> I've been searching on how to set the XML encoding of the XML declaration
>> output file in xerces 3.0 (C++)
>> In the previous versions, I had to call the setEncoding method of the
>> DOMDocument, but I can't find it now.
>> As a result, the XML files have the "UTF-8" encoding in the declaration
>> while I need them to be in "ISO-8859-1".
>>
>> Thx a lot guys.
>>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: c-dev-unsubscribe@xerces.apache.org
> For additional commands, e-mail: c-dev-help@xerces.apache.org
>
>
>
--
View this message in context: http://www.nabble.com/Specifying-XML-Encoding-tp23195708p23196815.html
Sent from the Xerces - C - Dev mailing list archive at Nabble.com.
---------------------------------------------------------------------
To unsubscribe, e-mail: c-dev-unsubscribe@xerces.apache.org
For additional commands, e-mail: c-dev-help@xerces.apache.org
Re: Specifying XML Encoding
Posted by Alberto Massari <am...@datadirect.com>.
In the DOML3 specifications, the encoding is set in the DOMLSOutput
object that is passed to DOMLSSerializer::write.
Alberto
radada wrote:
> Hi there again : ))
>
> I've been searching on how to set the XML encoding of the XML declaration
> output file in xerces 3.0 (C++)
> In the previous versions, I had to call the setEncoding method of the
> DOMDocument, but I can't find it now.
> As a result, the XML files have the "UTF-8" encoding in the declaration
> while I need them to be in "ISO-8859-1".
>
> Thx a lot guys.
>
---------------------------------------------------------------------
To unsubscribe, e-mail: c-dev-unsubscribe@xerces.apache.org
For additional commands, e-mail: c-dev-help@xerces.apache.org