如何在python中读取带有特殊字符的文本文件

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何在python中读取带有特殊字符的文本文件相关的知识,希望对你有一定的参考价值。

我正在尝试使用特殊字符读取文本文件,例如:الحمدللهربالعالمين

我正在使用:

import fileinput 
fileToSearch = "test_encoding.txt"
with open(fileToSearch, 'r', encoding='utf-8') as file:
    counter = 0;
    for line in file:
        print(line)

但Python崩溃了这条消息:

Traceback (most recent call last):
  File "test.py", line 9, in <module>
    print(line)
  File "C:UsersatheelmAppDataLocalProgramsPythonPython35-
32libencodingscp1252.py", line 19, in encode
    return codecs.charmap_encode(input,self.errors,encoding_table)[0]
UnicodeEncodeError: 'charmap' codec can't encode characters in position 0-1: 
character maps to <undefined>

我有Python 3.5.1,我正在使用Windows。

我正在运行此命令:

py test.py > out.txt
答案

使用2个diff文件并使用io:

lines=["Init"]
with io.open(fileToSearch,'r',encoding='utf-8') as file:
    counter = 1;
    for line in file:
        lines.insert(counter,str(line))
        counter = counter+1
with io.open(out_file,'w',encoding='utf-8') as file:
    for item in lines:
        file.write("%s
" % item)

以上是关于如何在python中读取带有特殊字符的文本文件的主要内容,如果未能解决你的问题,请参考以下文章

如何在 PHP“回声”中插入带有撇号和其他特殊字符的文本? [复制]

Python:匹配带有特殊字符和空格的长字符串,然后在开头添加两个字符

Python:当文件在列标题中有特殊字符时,使用 Pandas 读取 Excel 文件

使用 std::wifstream 读取带有特殊字符的 unicode 文件

在 Apache Web 服务器中读取带有特殊字符的图像

python读取文本文件,如何将每行最后一个特定字符替换?