Frage

Wenn ich kopieren und einfügen aus einem Word-Dokument in ein QT TextEditor, Es scheint gut zu sehen. Aber wenn ich versuche, den Text für den Zugriff mit toPlainText oder toHTML, gibt er den Text mit allen Anführungszeichen (Doppel- und Einzel) als Fragezeichen. Gibt es eine Möglichkeit, um dieses? Ich verwende die Qt4-qtruby Bindungen.

War es hilfreich?

Lösung

Das ist, weil die in Word verwendeten Zitate sind nicht wirklich ASCII Anführungszeichen - Sie irgendeine Art von funky Unicode-Zeichen sind, die Art sieht aus wie ein Zitat

.

Für HTML, wenn Sie UTF-8-Codierung verwenden, sollte es funktionieren. Für Klartext obwohl du bist ziemlich viel Glück.

Hier ist ein schöne Seite mit ein paar mehr Infos

Andere Tipps

Ich gehe davon aus, dass Sie eine QTextEdit verwenden. Ich denke, das Problem verwandt ist codiert. Versuchen Sie das Word-Dokument als Nur-Text speichern und das gleiche versuchen. Wenn es wichtig ist, mit Wort zusammenarbeiten, ich glaube, Sie müssen herausfinden, wie die Codierung auf Copy-Paste zu ändern.

Bearbeiten
Veröffentliche, was Lösung, die Sie schließlich verwenden. Ich bin sehr interessiert.

Ich bin auch Qt und das ist nur meine Meinung.

Ich hoffe, das hilft.

Wenn Sie toPlainText() sind nannte es eine QString zurückgibt. QString ist intern Unicode so lange, wie die Daten innerhalb des QString ist es angenommen hat, in Ordnung zu sein. Wenn Sie die Daten aus dem QString mit toAscii() bekommen, dann ist das, wo die schlechte Umwandlung stattfindet.
Wenn diese Theorie richtig ist, verwendet toUtf8() statt toAscii() auf dem QString.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top