首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

获取MP3资料的总时长

2013-03-22 
获取MP3文件的总时长请教一下大家怎么获取MP3文件的时长下面这个方法是不行的shell32 这个命名空间引用不

获取MP3文件的总时长
请教一下大家  怎么获取MP3文件的时长
下面这个方法是不行的  shell32 这个命名空间引用不了

谢谢大家  明天来给分 

/C# 获取mp3文件的歌曲时间长度

//添加命名空间:
    using Shell32;
    using System.Text.RegularExpressions;
//添加引用:COM组件的Microsoft Shell Controls And Automation

string dirName = Path.GetDirectoryName(SongPath);
SongName = Path.GetFileName(SongPath);//获得歌曲名称
FileInfo fInfo = new FileInfo(SongPath);
ShellClass sh = new ShellClass();
Folder dir = sh.NameSpace(dirName);
FolderItem item = dir.ParseName(SongName);
SongTime = Regex.Match(dir.GetDetailsOf(item, -1), "\\d:\\d{2}:\\d{2}").Value;//获取歌曲时间
[解决办法]
这里有控制mp3播放的基本方法,也包含获取总时长
[解决办法]

    string file = @"E:\滴答.mp3";
            ShellClass sh = new ShellClass();
            Folder dir = sh.NameSpace(Path.GetDirectoryName(file));
            FolderItem item = dir.ParseName(Path.GetFileName(file));
            string str = dir.GetDetailsOf(item, 27) ;
            MessageBox.Show(str);


首先引用COM组件
Microsoft Shell Controls And Automation

代码里
using Shell32;

[解决办法]
引用:
这个贴为毛就这样沉了,还没给出我想要的答案额,让我怎么给分

可以“无满意答案结贴”的,这样就不会使用分。

楼主如果不是做winform程序,可以用Dewplayer:下载地址http://www.alsacreations.fr/dl/dewplayer.zip,官方网站:http://www.alsacreations.fr/dewplayer.html
[解决办法]
歌曲时长=文件大小/位率×8

热点排行