【问题标题】:What's the correct interpretation of this byte string?这个字节串的正确解释是什么?
【发布时间】:2018-04-12 16:02:01
【问题描述】:

在朋友的音乐目录中,我遇到了这个路径和文件名:

Ministry/Κî•Î¦Î‘Î›Î—Îžî˜ (Psalm 69)/Ministry - Κî•Î¦Î‘Î›Î—Îžî˜ (Psalm 69) - 06 - Scarecrow.mp3

您可以谷歌Ministry Κî•Î¦Î‘Î›Î—Îžî˜ 并获得结果。如果我将它输入 url 编码器,我会得到%C2%9Ai%C2%95i%C2%A6i%C2%91i%C2%9Bi%C2%97i%C2%9Ei%C2%98

通过遍历多个不正确的编码/解码周期,它显然在某种程度上受到了破坏。它应该是什么?你是怎么得到这个答案的?

我尝试了各种使用 UTF-8 的纸笔涂鸦,但找不到任何有意义的东西。

【问题讨论】:

标签: unicode character-encoding non-ascii-characters musicbrainz


【解决方案1】:

应该是ΚΕΦΑΛΗΞΘ,也就是俗称诗篇69的事工专辑的标题。ΚΕΦΑΛΗΞΘ是UTF-8编码的ΚΕΦΑΛΗΞΘ被解释为Windows-1252时的样子。

这很接近,但与您的Κî•Î¦Î‘Î›Î—Îžî˜ 不同,后者用îs 代替了两个Îs。我对这些差异的猜测是,考虑到它们的变化和位置,在 TitleCase 转换过程中的某个地方也发生了。

通过有根据的猜测、测试和@Remy 的有用评论到达那里。

【讨论】:

  • ΚΕΦΑΛΗΞΘ 的 UTF-8 编码形式被误解为 Windows-1252 实际上是 ΚΕΦΑΛΗΞΘ,这与 OP 显示的内容接近但不完全相同。 OP 显示 î 代替了 Îs 中的 2 个,这将导致它在重新解释为 UTF-8 时解码为 Κ��ΦΑΛΗΞ��。像这样的小变化会产生很大的不同。
  • 嗯...你是对的。我刚刚做了一个快速的处理并通过肉眼验证,错过了。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2014-12-02
  • 2020-09-29
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-04-17
相关资源
最近更新 更多