1

当我从 Word 文档复制并粘贴到 QTTextEditor时,它看起来不错。但是当我尝试使用toPlainTextor访问文本时toHTML,它会返回带有所有引号(双引号和单引号)作为问号的文本。有没有解决的办法?我正在使用 qt4-qtruby 绑定。

4

3 回答 3

1

这是因为 Word 中使用的引号实际上并不是 ASCII 引号字符——它们是某种时髦的 unicode 字符,看起来像引号。

对于 HTML,如果您使用 UTF-8 编码,它应该可以正常工作。对于纯文本,尽管您非常不走运。

这是一个不错的页面,其中包含更多信息

于 2009-03-04T16:39:46.653 回答
0

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

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

我也是 QT 的新手,这只是我的看法。

我希望这有帮助。

于 2009-03-04T16:31:30.760 回答
0

当您调用toPlainText()它时,它会返回一个QString. QString是内部 unicode,所以只要数据在QString它应该是可以的。如果您从QString使用中获取数据,toAscii()那么这就是发生错误转换的地方。
如果这个理论是正确的,toUtf8()toAscii()QString.

于 2009-03-04T16:47:25.947 回答