QTextEdit在QT Ruby中将引号作为问号返回

问题描述 投票:1回答:3

当我从Word文档复制并粘贴到QT TextEditor时,它似乎很好看。但是当我尝试使用toPlainTexttoHTML访问文本时,它会返回带有所有引号(双引号和单引号)作为问号的文本。有没有解决的办法?我正在使用qt4-qtruby绑定。

ms-word text-editor copy-paste quotes qtruby
3个回答
1
投票

这是因为Word中使用的引号实际上不是ASCII引号字符 - 它们是某种类似于引用的时髦unicode字符。

对于HTML,如果您使用UTF-8编码,它应该可以正常工作。对于纯文本,虽然你几乎没有运气。

这是一个nice page with some more info


0
投票

我假设您正在使用QTextEdit。我认为问题是编码相关。尝试将word文档保存为纯文本并尝试相同。如果与word互操作很重要,我认为你必须弄清楚如何在复制粘贴上更改编码。

编辑 请发布您最终使用的解决方案。我很感兴趣。

我也是QT的新手,这只是我的意见。

我希望这有帮助。


0
投票

当你打电话给toPlainText()时,它会返回一个QStringQString是内部unicode,所以只要数据在QString内部就可以了。如果你使用QStringtoAscii()获取数据,那么那就是发生错误转换的地方。 如果这个理论是正确的,那就在toUtf8()上使用toAscii()而不是QString

© www.soinside.com 2019 - 2024. All rights reserved.