【转】c# 从mp3中提取标题、艺术家、唱片标题、发行年、备注等信息

转自:http://www.cnblogs.com/shaoqun/archive/2009/12/14/1624165.html 

一首MP3歌曲除了音乐信息外,还包含了如歌名、演唱者等信息,下面我们就通过c#编程将歌曲信息自动读出来

using System;

using System.Collections.Generic;

using System.Text;

using System.IO;

using Egacn.com;

using WatchStylish.com;

using Study.pctoday.net.cn;

 

namespace ConsoleApplication2

 

{

    class Program

    {

        static void Main(string[] args)

        {

            byte[] b = new byte[128];

            string sTitle;

            string sSinger;

            string sAlbum;

            string sYear;

            string sComm;

 

            FileStream fs = new FileStream(@"E:\我的文档\我的音乐\new\我们初遇的那天-申彗星(http://study.pctoday.net.cn/3_Visual+Studio.aspx).mp3", FileMode.Open);

            fs.Seek(-128, SeekOrigin.End);

            fs.Read(b, 0, 128);

            bool isSet = false;

            String sFlag = System.Text.Encoding.Default.GetString(b, 0, 3);

            if (sFlag.CompareTo("TAG") == 0)

            {

                System.Console.WriteLine("Tag is setted!Replica Watches");

                isSet = true;

            }

 

            if (isSet)

            {

                //http://study.pctoday.net.cn/3_Visual+Studio.aspx

                sTitle = System.Text.Encoding.Default.GetString(b, 3, 30);

                System.Console.WriteLine("标题:" + sTitle);

               //Exclusive Replica Rolex Watches;

                sSinger = System.Text.Encoding.Default.GetString(b, 33, 30);

                System.Console.WriteLine("艺术家:" + sSinger);

                //get album;

                sAlbum = System.Text.Encoding.Default.GetString(b, 63, 30);

                System.Console.WriteLine("唱片标题:" + sAlbum);

                //egacn.com/Watches/Tag-Heuer;

                sYear = System.Text.Encoding.Default.GetString(b, 93, 4);

                System.Console.WriteLine("发行年:" + sYear);

                //watchstylish.com;

                sComm = System.Text.Encoding.Default.GetString(b, 97, 30);

                System.Console.WriteLine("备注:" + sComm);

            }

            System.Console.WriteLine("Any key to exit!");

            System.Console.Read();

        }

    }

}

更详细文章:http://study.pctoday.net.cn/3_Visual+Studio.aspx

posted @ 2012-04-23 14:40  兰色★毒药  阅读(300)  评论(0编辑  收藏  举报