0

我正在使用以下 API https://gist.github.com/1285901

到目前为止我有这段代码,但是当它尝试读取标签时,它们都返回空白(我的标签是指艺术家信息等)

using System;
using System.IO;
using Microsoft.WindowsAPICodePack.Shell;
using Microsoft.WindowsAPICodePack;

namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {
            Files();
            Console.Read();
        }
        public static void Files()
        {
            FileInfo fi = new FileInfo(@"C:\Users\santised\Desktop\music\");
            DirectoryInfo di = fi.Directory;
            FileSystemInfo[] fsi = di.GetFiles();
            foreach (FileSystemInfo info in fsi)
            {
                Console.Write(info.Name.Replace(".mp3", "") + " Tags: " + Tags(@"C:\Users\santised\Desktop\music\" + info.Name) + "\r\n");
            }
        }
        public static String Tags(String fileName)
        {
            if (File.Exists(fileName))
            {
                var file = new FileInfo(fileName);
                String returnval =  String.Join("; ", file.GetTags()); // .GetTags() is from the api on gist hub
                return returnval;
            }
            return "None;";
        }
    }
}
4

2 回答 2

0

你可以使用 taglib-sharp

这里下载

然后尝试

var file = TagLib.File.Create(address);
              var t1 =  file.Tag.Copyright;
              var t2 =  file.Tag.Album;
              var t3 =  file.Tag.AlbumArtists;
              var t4 =  file.Tag.Title;
              var t5 =  file.Tag.Comment ;
              var t6 =  file.Tag.Composers ;
              var t7 =  file.Tag.Conductor ;
              var t8 =  file.Tag.Grouping;
              var t9 =  file.Tag.Artists ;
于 2012-12-02T21:25:00.687 回答
0

您使用的库检索归属于 Windows 中文件的标签:它不检索 MP3 元数据 (ID3) 标签。您将需要找到一个能够读取 ID3 标签的库,例如TagLib Sharp

于 2012-12-02T21:08:01.350 回答