2

我正在尝试读取每个播放列表中的所有播放列表和音乐文件。

这是我在 C# 中的代码:

iTunesAppClass iTunesAppClass = new iTunesAppClass();
IITSourceCollection sources = iTunesAppClass.Sources;
foreach (IITSource src in sources)
{
    if (src.Name == "Library")
    {
        IITPlaylistCollection pls = src.Playlists;
        foreach (IITPlaylist p in pls)
            if (p.Kind == ITPlaylistKind.ITPlaylistKindUser)
            {
                var pname = p.Name;
                IITTrackCollection tracks = p.Tracks;
                foreach (IITTrack track in tracks)
                {
                    var name = track.Name;
                    string filename = "???";   // How to get the file name of the mp3 file?
                }
            }
    }
}

所以,在最后一行,我得到了 Track.Name,这似乎是歌曲的标题。

如何获取曲目的完整路径和文件名?

4

1 回答 1

0

你在这样一个古老的图书馆工作。以下是查找文件名的方法:

foreach (IITTrack track in tracks)
{
    var name = track.Name;
    if (track.Kind == ITTrackKind.ITTrackKindFile) { // it is a file track
        // Cast it as file track
        IITFileOrCDTrack fileTrack = (IITFileOrCDTrack)track;
        // Check if it's a valid path
        if (!String.IsNullOrEmpty(fileTrack.Location)) {
            string filepath = fileTrack.Location; // here you go
        }
    }
}

我实际上并没有运行上面的代码(我在 2007 年编写的代码片段中发现了类似的代码)。你可以自己试试。

于 2021-11-30T08:13:43.247 回答