【问题标题】:Is it possible to "sniff" the Character encoding?是否可以“嗅探”字符编码?
【发布时间】:2013-05-22 05:10:45
【问题描述】:

我有一个接受 CSV 文件的网页。这些文件可以在不同的地方创建。 (我认为)没有办法在 CSV 文件中指定编码 - 所以我不能可靠地将它们全部视为 utf-8 或任何其他编码。

有没有办法智能地猜测我得到的 CSV 的编码?我正在使用 Python,但也愿意使用与语言无关的方法。

【问题讨论】:

  • 有办法,只要你能忍受错误检测,因为没有 100% 可靠的方法来猜测编码。
  • 如果您知道这些文件的语言,您可以非常可靠地检测到编码 - 是吗?
  • 他们大部分时间都是英文的,但我不能确定。这应该接受任何 csv。
  • @shabda 如果您与语言无关,那么这可能也适用于编码。在这种情况下 - 如果你只是将数据写入另一个文件左右 - 你可以假设 latin1 因为这会将所有数据“按原样”(字节 -> unicode)并再次写出它们(或者,在 Py2 中,留在str 而不是unicode)。

标签: python csv unicode character-encoding


【解决方案1】:

没有正确的方法可以通过仅查看文件本身来确定文件的编码,但您可以使用一些基于启发式的解决方案,例如:chardet

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-11-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-04-15
    • 2012-08-09
    相关资源
    最近更新 更多