Qt:XML流不直接写入字符串
我的问题如下:我的程序处理项目并将其设置保存在XML文件中。它还使用相同的Qt:XML流不直接写入字符串,xml,qt,qt4,xml-parsing,Xml,Qt,Qt4,Xml Parsing,我的问题如下:我的程序处理项目并将其设置保存在XML文件中。它还使用相同的QXmlStreamWriter类创建可查看的HTML文件。但是,由于XML应该跳过特定的符号,因此HTML文件中有很多字符都不能正确表示。有没有一种方法可以使用XML流将任何QString直接写入HTML文件?类似于writeRaw()函数的东西 因为我找不到这个问题的解决方案,所以我必须创建一个QTextStream(xml->device())并写入流中。然而,流似乎是同步工作的,而且,考虑到这种情况,有时它只在XM
QXmlStreamWriter
类创建可查看的HTML文件。但是,由于XML应该跳过特定的符号,因此HTML文件中有很多字符都不能正确表示。有没有一种方法可以使用XML流将任何QString直接写入HTML文件?类似于writeRaw()
函数的东西
因为我找不到这个问题的解决方案,所以我必须创建一个QTextStream(xml->device())
并写入流中。然而,流似乎是同步工作的,而且,考虑到这种情况,有时它只在XML流完成整个文件的编写之后才编写部分代码。在HTML术语中,它意味着代码的一部分出现在
标记之后。还有其他解决办法吗
如果有任何帮助,我将不胜感激 好吧,我解决了我的问题
在文档中说,
QString::QString(QByteArray&)
使用QString::fromscii()
函数将字节数组转换为强数组。我用QString::fromUtf8(myByteArray)
替换了这个部分,它成功了 请注意,fromscii并不是(我猜)您所想的那样。如果使用QTextCodec::setCodecForCStrings()设置了编解码器,则该编解码器用于将str转换为Unicode;否则,此函数将执行与fromLatin1()相同的操作。