我可以通过此代码打开任何.txt文件
userinput1 = input ("Enter file name:")
myfile1 = open(userinput1).read()
print(myfile1)
但是当我打开任何pdf或ppt或xlsx文件时它会给出错误。任何人都可以帮我或告诉我在python中打开所有类型的文件(.txt,.doc,.ppt,.xlsx等)
输出:
输出:
Traceback (most recent call last):
File "C:/Users/umer/Desktop/stack.py", line 33, in <module>
myfile1 = open(userinput1).read()
File "C:\Python34\lib\encodings\cp1252.py", line 23, in decode
return codecs.charmap_decode(input,self.errors,decoding_table)[0]
UnicodeDecodeError: 'charmap' codec can't decode byte 0x81 in position 370: character maps to <undefined>
答案 0 :(得分:0)
对此没有通用的答案,因为每个文件都有自己的编码,所以对于读写,你需要知道要使用哪种编码。
您可以使用
import codecs
userinput1 = input ("Enter file name:")
myfile1 = codecs.open(userinput1, "r", "latin-1").read()
print(myfile1)
但是您仍然需要知道文件的编码并相应地进行更改(在此示例中为latin-1
)。