You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

C#调用iTunes接口如何从媒体库获取曲目的完整路径与文件名

实现方案

你可以将IITTrack实例转换为IITFileOrCDTrack类型,读取其Location属性即可拿到对应音乐文件的完整本地路径,修改后的代码如下:

using System.IO;
using iTunesLib;

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 songName = track.Name;
                    // 仅本地文件类型轨道可获取路径
                    if (track is IITFileOrCDTrack localTrack && !string.IsNullOrEmpty(localTrack.Location))
                    {
                        // 完整文件路径
                        string fullFilePath = localTrack.Location;
                        // 单独提取文件名
                        string fileName = Path.GetFileName(fullFilePath);
                    }
                }
            }
        }
    }
}

注意事项

  • 仅本地导入、已下载到本地的Apple Music曲目能返回有效路径,流媒体未下载曲目、CD音轨、云端未缓存曲目返回空值,建议加空判断避免报错
  • 运行代码前需要确保系统已正确安装iTunes客户端,且项目已正确引用iTunes COM组件
  • 路径相关工具方法需要引入System.IO命名空间

内容的提问来源于stack exchange,提问作者FLICKER

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.24 00:24:06