美文网首页
C# winform 获取mp3相关信息(名称,歌手,专辑图片等

C# winform 获取mp3相关信息(名称,歌手,专辑图片等

作者: 颜渊若水 | 来源:发表于2018-03-25 20:10 被阅读0次

    最近在用winform做一个音乐播放器,在数据获取这块我碰到了一点问题,就是如何动态获取当前选取的MP3文件的专辑图片。在网上找了相关的资料,奈何才疏学浅,没看懂如何使用,后来又了解到TagLib可以解决这个需求,于是自己试了试,确实比较方便。

    首先引用TagLib.dll,直接在vs的NuGet包管理中下载:


    image.png

    然后调用文件

     private void bunifuFlatButton3_Click(object sender, EventArgs e)
            {
                //获取指定文件夹中的MP3文件
                var x = System.IO.Directory.GetFiles(@"D:\CloudMusic", "*.mp3", SearchOption.AllDirectories);
                var y = x.Length;  
                //将得到的文件实例化,x[1]为MP3路径       
                TagLib.File xxxx = TagLib.File.Create(x[1]);
    
                //歌曲属性均在实例文件的tag属性属性中
                string artist = xxxx.Tag.FirstArtist;
                string title = xxxx.Tag.Title;
    
                不一定每首歌都有专辑图片,需要判断
                if(xxxx.Tag.Pictures.Length>=1)
                {
                    //tag中的图片信息为byte数组,需要用函数进行转化
                    byte[] bin = xxxx.Tag.Pictures[0].Data.Data;
                    //pictureBox2.Image = ReturnPhoto(bin);//转化函数
                }
    
                //string image = xxxx.Tag.Pictures[0].;
            }
    

    图片转化函数

    public System.Drawing.Image ReturnPhoto(byte[] streamByte)
            {
                System.IO.MemoryStream ms = new System.IO.MemoryStream(streamByte);
                System.Drawing.Image img = System.Drawing.Image.FromStream(ms);
                return img;
            }
    

    结语,例子中只例举部分属性,其余的大家可以自己查看。

    原创文章,转载请注明出处~

    相关文章

      网友评论

          本文标题:C# winform 获取mp3相关信息(名称,歌手,专辑图片等

          本文链接:https://www.haomeiwen.com/subject/kujkcftx.html