目录
一、作业内容
二、解题
(一)、读取mp3(包含MP3.Flac格式等)文件
(二)播放mp3文件
1.暂停
2.下一曲
3.音量大小调节
(三)播放ogg文件
三、学习心得
四、完整代码
五、实现结果
一、作业内容
请编写一个C#程序,实现音乐文件的播放功能。
要求1:
1. 程序应能够读取MP3文件,并播放其中的音频。
2. 程序应能够处理可能出现的异常,如文件不存在、文件读取错误等。
3. 程序应具有良好的用户界面,方便用户进行操作。
4. 程序应具有良好的兼容性,能在不同版本的C#中正常运行。
提示:此功能可以使用WindowsMediaPlayer控件
要求2:
1. 程序应能够播放ogg文件。
2. 程序应能够处理可能出现的异常,如文件不存在、文件读取错误等。
3. 程序应具有良好的用户界面,方便用户进行操作。
4. 程序应具有良好的兼容性,能在不同版本的C#中正常运行。
提示:此功能可以使用Nuget程序包中的Naudi.Vorbis控件
二、解题
题目中有两个主要的方面
1.能够读取mp3文件,播放(使用WindowsMediaPlayer控件)
2.能够读取ogg文件,播放(Nuget程序包中的Naudi.Vorbis控件)
还有一些提高代码健壮性,用户体验性的要求
程序应能够处理可能出现的异常,如文件不存在、文件读取错误等。
程序应具有良好的用户界面,方便用户进行操作。
程序应具有良好的兼容性,能在不同版本的C#中正常运行。
明确要求之后,我们就来解决问题就行啦~
(一)、读取mp3(包含MP3.Flac格式等)文件
首先我们想要音乐播放器能正确播放音乐,肯定得有文件来播放吧,所以我们的第一步就是把怎么读文件。话不多说,上代码,边看代码边分析。
private void button1_Click(object sender, EventArgs e)
{
openFileDialog1.Filter = "音频文件|*.mp3;*.wav;*.flac";
openFileDialog1.Multiselect = true;
if (openFileDialog1.ShowDialog() == DialogResult.OK)
{
listBox1.Items.Clear();
if (files != null)
{
Array.Clear(files, 0, files.Length);
}
files = openFileDialog1.FileNames;
string[] array = files;
foreach (string x in array)
{
listBox1.Items.Add(x);
localmusiclist.Add(x);
}
}
}
在音乐播放器中,肯定要有选择文件按钮,不然文件怎么进去呢?在此处,就使用了一个button1控件,读入文件(由于ogg文件需要单独解码),所以我们只需要负责将.mp3;.wav;.flac等几种基础文件读入就行。
此处用了openFileDialog控件来读入文件,并将读入的文件名,以列表的形式展现在listbox1上面。
发布者:admin,转转请注明出处:http://www.yc00.com/web/1754991345a5224661.html
评论列表(0条)