看到有个讨论的帖子,但是我还是不知道怎么读取!作为文本么? 用文件流么?
谢谢各位给个例子哦!
---------------------------------------------------------------
可以使用editplus或者UltraEdit将mp3文件打开。
在mp3文件的开头,结尾 会有些文本信息。
这些就是楼主说的mp3文件的tag信息吧。
不过到底在什么地方开始,什么地方结束。楼主得查查资料了
---------------------------------------------------------------
1<code author="maddog">
2fs=File.OpenRead("e:\\\path\\\2.mp3");
3fs.Seek(-128,System.IO.SeekOrigin.End);
4byte[] buf= new Byte[128];
5fs.Read(buf,0,128);
6Console.Write("test");
7
8Console.Write(System.Text.Encoding.Default.GetString(buf));
9<code>
10\---------------------------------------------------------------
11
12static void Main(string[] args)
13{
14byte[] b = new byte[128];
15string sTitle;
16string sSinger;
17string sAlbum;
18string sYear;
19string sComm;
20
21FileStream fs = new FileStream(@"d:\mp3.mp3", FileMode.Open);
22fs.Seek(-128, SeekOrigin.End);
23fs.Read(b, 0, 128);
24bool isSet=false;
25String sFlag = System.Text.Encoding.Default.GetString(b, 0, 3);
26if (sFlag.CompareTo("TAG")==0)
27{
28System.Console.WriteLine ("Tag is setted!");
29isSet=true;
30}
31
32if (isSet)
33{
34//get title of song;
35sTitle = System.Text.Encoding.Default.GetString (b,3,30);
36System.Console.WriteLine ("Title:" + sTitle);
37//get singer;
38sSinger = System.Text.Encoding.Default.GetString (b,33,30);
39System.Console.WriteLine ("Singer:" + sSinger);
40//get album;
41sAlbum = System.Text.Encoding.Default.GetString (b,63,30);
42System.Console.WriteLine ("Album:" + sAlbum);
43//get Year of publish;
44sYear= System.Text.Encoding.Default.GetString (b,93,4);
45System.Console.WriteLine ("Year:" + sYear);
46//get Comment;
47sComm= System.Text.Encoding.Default.GetString (b,97,30);
48System.Console.WriteLine ("Comment:" + sComm);
49}
50System.Console.WriteLine("Any key to exit!");
51System.Console.Read();
52}</code></code>