我试图用Python编写一个脚本为UTF-8文件转换成ASCII文件:Python脚本从UTF-8转换为ASCII
#!/usr/bin/env python
# *-* coding: iso-8859-1 *-*
import sys
import os
filePath = "test.lrc"
fichier = open(filePath, "rb")
contentOfFile = fichier.read()
fichier.close()
fichierTemp = open("tempASCII", "w")
fichierTemp.write(contentOfFile.encode("ASCII", 'ignore'))
fichierTemp.close()
当我运行此脚本我有以下错误:
UnicodeDecodeError: 'ascii' codec can't decode byte 0xef in position 13: ordinal not in range(128)
我认为可以忽略编码方法中忽略参数的错误。但似乎不是。
我打开其他方式转换。
问题是,你从来没有解码的第一个地方。 – 2010-11-28 23:23:42
由于字符不存在于ASCII字符集中,所以您得到了错误,因此无法转换。有时可以将UTF8字符映射为ASCII中最接近的可视字符,如`e`到`e`,但这可以改变单词的含义。您必须决定该路径是否适用于您的应用程序。 – 2010-11-28 23:24:45
这似乎是一个非常糟糕的主意! – tchrist 2010-11-28 23:55:19