当您导出音乐库时,我注意到这与iTunes有所不同。
我有一首带有é的歌曲(即带有锐音的小拉丁语)当我在Windows中导出库时,它会被编码为%C3%A9,但是当我从Mac导出库时,打印正常的'e',然后打印%CC%81。
示例:
Song Name: Héllo World
Windows Export: H%C3%A9llo World
Mac Export: He%CC%81llo World
对于我正在制作的程序来说,这对我来说很重要,在Windows版本中,我解码编码,但现在如果文件来自Mac,它就不起作用。
那为什么会有这种差异呢?有没有可以看到差异的地方,看看Mac编码是什么?可能有一个Object-C例程来解码这些字符串吗?
感谢。
答案 0 :(得分:6)
C3A9
是字符é的UTF-8编码
CC81
是COMBINING ACUTE ACCENT字符(U + 0301)的UTF-8编码。
“e”后跟COMBINING ACUTE ACCENT组合成字符“é” 这两种只是Unicode normalization的不同形式。
为什么一个iTunes更喜欢一个而不是另一个我不知道,没有固有的理由这样做。