在ans中将ansi转换为utf-8

时间:2017-03-02 08:21:31

标签: python encoding utf-8 ansi

我可能错误地访问天气这个字符串是ansi或其他任何东西,但它来自rtf docs with heading。

{\rtf1\ansi\ansicpg1252

来自doc的感兴趣的字符串是:

ansi_string = r'3 \u176? \u177? 0.2\u176? (2\u952?)'

当我用文字打开文档时,它给了我: 3°±0.2°2θ

问题是: 1)这些转义码是什么? 是否可以使用python内置方法将此字符串转换为utf-8?

1 个答案:

答案 0 :(得分:0)

我不认为这是最好的答案,但要说明我想要的,这是工作代码。

import clr
clr.AddReference("System")
clr.AddReference("System.Windows.Forms")
import System.Windows.Forms as WinForms

def rtf_to_text(rtf_str):
    rtf = r"{\rtf1\ansi\ansicpg1252" + '\n' + rtf_str + '\n' + '}'
    richTextBox = WinForms.RichTextBox()
    richTextBox.Rtf = rtf
    return richTextBox.Text

print(rtf_to_text(r'3 \u176? \u177? 0.2\u176? (2\u952?)'))
-->'3 ° ± 0.2° (2θ)'