【问题标题】:Unable to detect the String encoding无法检测到字符串编码
【发布时间】:2018-07-19 07:28:29
【问题描述】:

你能找出下面的字符串中使用了什么编码吗?应该是resume这个词,带有重音e。我尝试在vi中将编码设置为latin-1(默认为utf-8),但仍然无法读取。

72 ef bf bd 73 75 6d ef bf bd

|r...sum...|        

【问题讨论】:

  • 询问作者使用哪种编码的人是作者。编码不是预测的,它们是通过标准、规范或特定上下文中的约定来传达的。通过 HTTP 进行通信时,一种非常常见的方式是 Content-Type 响应标头。

标签: string encoding utf-8


【解决方案1】:

您的十六进制数据是字符串r�sume�的UTF-8编码,其中ef bf bd替换字符的编码,通常显示为黑色背景上的问号。

所以你的字符串已经损坏了。在某一时刻,它可能是résumé。但后来它被保存在没有重音 e 的编码中,它们被替换为 替换字符

【讨论】:

    【解决方案2】:

    EF BF BD 是 Unicode 替换字符 U+FFFD ... 的 UTF-8 编码。

    这意味着无论您如何解码,这都不会拼写简历。

    在某个地方,某些东西已经弄乱了解码(大概是通过使用错误的解码来解码byte[])。

    【讨论】:

      猜你喜欢
      • 2021-07-23
      • 2010-10-20
      • 2013-04-01
      • 2011-06-16
      • 2016-10-06
      • 2012-06-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多