Я нахожусь в процессе преобразования программы Python в приложение macOS, и теперь я могу читать библиотеку Apple Musi c напрямую, используя ITunesLibrary Framework. Я читал экспортированную библиотеку XML в python и привязал все свои файлы c к свойству persistentID, что я все еще хочу сделать. Однако мой файл данных, который необходимо преобразовать, имеет persistentID, хранящийся в виде значения строкового типа, потому что именно так iTunes / Apple Musi c экспортирует файл XML. ITunesLibrary Framework извлекает persistentID как значение типа NSNumber.
Я немного покопался, чтобы увидеть, существует ли метод преобразования между ними, поэтому я могу запустить сценарий в моем файле данных и преобразовать всю строку persistentID типы в типы NSNumber. То, что я нашел, не работает. Он возвращает ноль.
// The two below persistID's are for the same song.
var XMLPID = "7C9C79C87E3BEE04" // <--- persistentID from the XML file
var ITLPID:NSNumber = 8979185659088203268 // <--- persistentID from the ITL Framework
// I found this in another discussion here:
let convertedPID = NumberFormatter().number(from: XMLPID)
print("XML PID = \(XMLPID)")
print("Converted PID = \(convertedPID)")
Благодарю за любую помощь в получении этой работы.