Inconsistencia com QXmlStreamWriter ao imprimir "& amp;"[resolvido]
-
no windows xp ele funciona certo imprime o "& amp;"
mas no windows 7 ele imprime "& amp; amp;"usando o qt 4.8
obs. sem o espaço entre o & e amp
resp.
Ola, a principio agora esta ok porem não estou mais usando o qt 4.8 mudei pro 5.1
Obrigado. -
diego,
poderia dar um pouco mais de detalhe (um código de exemplo)?
-
o codigo esta bem simples.
adcionei espaço na parte do "& amp ;" pois estavam sendo omitidosisto funciona no xp mas para ter mesmo resultado no 7 tenho q remover o "amp ;"
@ QFile file( filePath );
file.open(QIODevice::WriteOnly);
QXmlStreamWriter xmlWriter(&file);
xmlWriter.setAutoFormatting(true);
xmlWriter.writeStartDocument();
xmlWriter.writeStartElement("teste");
xmlWriter.writeTextElement( "url", "http://endereco.com:8080/local & amp ;parametro & amp ;final" );
xmlWriter.writeEndElement();
file.close();@ -
Estranho este comportamento. O writeTextElement transforma cada "&" em "&" (processo de "escape":http://qt-project.org/doc/qt-5.1/qtcore/qxmlstreamwriter.html#writeCharacters).
Faz um teste assim:
@
xmlWriter.writeTextElement( "url", "http://endereco.com:8080/local¶metro&final" );
@A String tem que ficar assim:
@
"http://endereco. com:8080/local&parametro&final"
@