之前在字符编码里说到,记事本里用ansi编码保存“联通”时,会出现读取时误读成乱码。如果以ansi编码存,以ansi编码读,是绝对没问题的,可惜记事本会以utf-8来读,而且我们还没法改
但是如果在python中,就可以让读取时不出现乱码,因为我们可以指定让python以什么编码来读(记事本只能指定以什么编码存,不能指定以什么编码读)
废话不多说,直接上python代码
f = open("Mytext.txt", "w", encoding="ansi") f.write('联通')
此时创建了一个Mytext.txt文件,直接双击打开是这样的:
此时改用python来读
f = open("Mytext.txt", "r", encoding="ansi") print(f.read()) # f.read()返回一个字符串 写filename时一定要带后缀名,否则报错
完美地读出来了!
此时再次直接双击记事本,依然只能得到