【问题标题】:Outputting string data in a 'raw' format以“原始”格式输出字符串数据
【发布时间】:2012-07-26 14:03:46
【问题描述】:

我从大量 CSV 文件中捕获了大量数据。某些信息已被挖掘出来。我雕刻的一个部分是具有大量各种文本格式的部分。其中一些是情绪和其他非标准文本。

当将此数据输出为 HTML 格式时,我遇到了错误。目前我有以下错误:

UnicodeDecodeError: 'charmap' codec can't decode byte 0X90 in Position: character maps to .

程序当前将信息从字符串存储到数组中。然后将数组写入 HTML 文件。

知道如何在 Python 3.2 中解决这个问题或如何实现字符缓冲区吗?

更新

我已经尝试了下面的 cmets,也做了更多的研究。

我用过这段代码无济于事:

MessageArray.append(Message.encode('ascii', 'ignore'))

但我得到了错误: TypeError: 无法将 'bytes' 对象隐式转换为 str。

【问题讨论】:

  • 你的输入数据是什么编码的? CSV 是文本文件,它们不应包含“原始”二进制数据。您可能只需要使用正确的字符集读取 CSV 文件。
  • "如果需要,可以提供代码 sn-ps。" – 是的,请。
  • 在 unicode 字符串的内部表示和二进制输出之间并没有真正的“原始”方式来编码/解码。 (也许 UTF-32 除外,但这很少有用。)您要么在字节数组和字节数组之间切换(这里不是这种情况,因为 CSV 和 HTML 都是文本格式),或者您必须知道输入和输出的编码是什么文字在里面。
  • 我正在使用 wb 读取数据。这是因为需要将其作为二进制文件来分割数据的某些部分。

标签: python windows python-3.x


【解决方案1】:

按照@SilverbackNet 的评论,我能够解决我的问题。虽然这并没有解决我的整体问题,因为能够从 CSV 导入和转换原始二进制数据,但允许忽略给我带来问题的数据。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-01-05
    • 1970-01-01
    • 1970-01-01
    • 2017-07-21
    • 2010-10-20
    相关资源
    最近更新 更多