C#音乐播放器

1.音乐播放器的功能

        提供基本的音乐播放器功能,包括选择、播放、暂停、调节音量和下载音乐文件等功能,能够处理不同的音频格式

2.基本实现思路

        使用C#中的控件来实现,包括button、listbox、Windows Media Player等。

3.代码实现

(1)定义两个实例变量files和localmusiclist,files存储用户选择的文件路径数组,localmusiclist存储本地音乐文件的路径

string[] files;
List<string> localmusiclist = new List<string> { };

(2)定义一个musicplay方法用来负责使用Windows Media Player控件 (axWindowsMediaPlayer1) 播放音乐文件,同时在尝试播放之前验证文件是否存在,使用 Path.GetExtension(filename) 判断文件类型并处理不同格式(如 mp3ogg 等)

private void musicplay(string filename)
        {
            try
            {
                // 设置URL属性前检查文件是否存在  
                if (!File.Exists(filename))
                {
                    throw new FileNotFoundException("文件不存在。", filename);
                }

                // 尝试设置Windows Media Player的URL  
                axWindowsMediaPlayer1.URL = filename;

                // 获取文件扩展名  
                string extension = Path.GetExtension(filename).ToLower();

                // 根据文件扩展名决定播放或输出信息  
                switch (extension)
                {
                    case ".ogg":
                        Console.WriteLine("这是.ogg文件");
                        // 注意:Windows Media Player不支持.ogg格式,需要额外的逻辑来处理这种情况  
                        break;
                    case ".mp3":
                        // 尝试播放MP3文件  
                        axWindowsMediaPlayer1.Ctlcontrols.play();
                        break;
                    default:
                        Console.WriteLine("无法识别的文件格式");
                        break;
                }
            }
            catch (FileNotFoundException ex)
            {
                // 处理文件未找到异常  
                MessageBox.Show($"文件未找到:{ex.FileName}", "错误", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
            catch (COMException ex) // 假设axWindowsMediaPlayer1抛出的是COMException,但具体取决于其实现  
            {
                // 处理COM组件异常,例如Windows Media Player控件相关的问题  
                MessageBox.Show($"Windows Media Player发生错误:{ex.Message}", "错误", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
            catch (Exception ex) // 捕获其他所有异常  
            {
                // 处理其他未知异常  
                MessageBox.Show($"发生未知错误:{ex.Message}", "错误", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }

(3)使用一个button用来处理用户点击按钮 (button1) 以选择音乐文件(支持 mp3flacwav),使用 OpenFileDialog 对话框,清空并更新 listBox1 显示选定的文件名,将选定的文件路径添加到 localmusiclist 中。

private void button1_Cli
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值