Я подал заявку, которые анализируют библиотеку iTunes для получения ее содержания. Это хорошо работает в большинстве случаев, но если пользователь переместил свою библиотеку где-то в другом месте, чем папка iTunes по умолчанию (см.: http://lifehacker.com/238296/ultranewb--how-to-move-your-itunes-library-to-an-external-drive), затем мне нужен способ найти этот путь.
На Mac я изучал ~/Library/Preferences/com.apple.iTunes.plist. Существует установка, названная "alis:1:iTunes Местоположение Библиотеки", но это содержит несколько параметров все связанные и преобразованные в шестнадцатеричный.
В Windows я нашел этот файл "C:\Documents and Settings\\Application Data\Apple Computer\iTunes\iTunesPrefs.xml", который содержит установку "Библиотека iTunes XML Location:1", но этот кодируется.
Любая справка значительно ценилась бы.Спасибо!
On Windows, запись iTunes Library XML Location:1
в iTunesPrefs.xml
является Base 64 закодированной строкой Unicode string, так что вам нужно будет декодировать ее перед тем, как вы сможете ее использовать. На моем компьютере она декодируется на C:\Documents и Settings\Emerick\My Documents\My Music\iTunes\iTunes Music Library.xml
.
Декодировать это значение, используя выбранный Вами язык, должно быть относительно легко; Ваша платформа может даже предоставлять библиотеки утилит, которые делают это тривиальным. В C#, например, функция декодирования будет выглядеть следующим образом:
static public string DecodeBase64(string encodedData)
{
byte[] encodedBytes = System.Convert.FromBase64String(encodedData);
return System.Text.UnicodeEncoding.Unicode.GetString(encodedBytes);
}
Я не могу помочь вам с Windows, но на Mac то, что вы видите в этом файле префиксов, это псевдоним старой школы обрабатывать данные. Посмотрите или просто используйте класс BDAlias Криса Хэнсона, чтобы преобразовать его в путь.