gpt4 book ai didi

iphone - iOS 中 ID3 标签的正确编码

转载 作者:行者123 更新时间:2023-11-29 03:59:56 24 4
gpt4 key购买 nike

我正在尝试从项目中的一堆 mp3 文件中获取 ID3 标签。

AudioFileGetProperty(audioFile, kAudioFilePropertyInfoDictionary, &size, &metadataDictionary);

如果标签不包含西里尔字母符号,则输出在设备上看起来正常。然而,我有时会得到这样的值:

album = "\U00ce\U00f2\U00ea\U00f0\U00fb\U00f2\U00ee\U00e5 \U00d0\U00e0\U00e4\U00e8\U00ee 102.5FM";
"approximate duration in seconds" = "260.623";

这会导致符号显示扭曲(http://d.pr/i/X9wG)。

有没有办法将这些符号解码为可读的形式?我已经试过了

NSString* value = [metadataDictionary objectForKey: key];
NSData* data = [value dataUsingEncoding: NSASCIIStringEncoding];
NSString* string = [[NSString alloc] initWithData: data encoding: NSUTF8StringEncoding];

但结果保持不变。

任何帮助将不胜感激!

[更新]

我倾向于尝试 this SO answer 中提供的解决方案,但是还有其他方法吗?

最佳答案

这是将这些符号解码为可读形式的方法:

NSString *value = [metadataDictionary objectForKey:@"artist"];
const char *cString = [value cStringUsingEncoding:NSWindowsCP1252StringEncoding];
NSString *artist = [NSString stringWithCString:cString encoding:NSWindowsCP1251StringEncoding];

关于iphone - iOS 中 ID3 标签的正确编码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16001847/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com