我有一个.rtf文件,只包含一个整数,比如说15.我希望通过python读取这个整数,并以某种方式操作该整数。但是,似乎python正在读取与.rtf文件相关的大部分元数据。这是为什么?我怎么能避免呢?例如,尝试读取此文件,我得到..
{\ RTF1 \ ANSI \ ansicpg1252 \ cocoartf949 \ cocoasubrtf460 {\ fonttbl \ F0 \ fswiss \ fcharset0 黑体;} {\ colortbl; \ red255 \ green255 \ blue255;} \ margl720 \ margr720 \ margb720 \ margt720 \ vieww9000 \ viewh8400 \ viewkind0 \ PARD \ tx566 \ tx1133 \ tx1700 \ tx2267 \ tx2834 \ tx3401 \ tx3968 \ tx4535 \ tx5102 \ tx5669 \ tx6236 \ tx6803 \ QL \ qnatural \ pardirnatural
答案 0 :(得分:4)
这就是.RTF(即富文本文件)的本质,它们包含额外的数据来定义文本的布局和格式化。
不建议将数据存储在此类文件中,以免遇到您所指出的困难。您是否会努力解析此文件并“恢复”您的一个数值,您可能会使您的应用程序面临更新版本的RTF格式的风险,这可能导致解析逻辑部分不正确,从而产生错误的数字数据应用程序)。
为什么不将此信息存储在真实的文本文件中。这可以是平面文本文件,或者最好是XML,YAML,JSON文件,例如用于添加“向前”兼容性作为您的应用程序,您可以在文件中添加额外的参数等。
但是,如果此文件是给定的,则可能存在要读取和写入的Python库。检查Python Package Index (PyPI)是否有RTF关键字。
答案 1 :(得分:4)
这正是RTF文件所包含的内容,因此Python(在没有进一步指示的情况下)会为您提供文件所包含的内容。
您可能正在寻找一个库来阅读RTF文件的内容,例如pyrtf-ng。