使用参数指定播放参考资料中的哪个声音文件

本文关键字:声音 文件 参考资料 参数 播放 | 更新日期: 2023-09-27 18:11:43

我在我的参考资料部分有大约20个小的声音效果文件…我想有一个方法,播放一个特定的声音文件基于一个参数我传递给它…假设我的声音文件命名为sound01.wav, sound02.wav等

public static void PlayMySound(string soundFile)
{
   SoundPlayer snd = new SoundPlayer(Properties.Resources.XXX);
   snd.Play()
}
PlayMySound(sound01);
PlayMySound(sound02);
etc.
在上面的代码中,我希望XXX是字符串soundFile

我正在努力避免这样的事情…

public static void PlayMySound(string soundFile)
{
   if (soundFile == "sound01") { SoundPlayer snd = new SoundPlayer(Properties.Resources.sound01); }
   if (soundFile == "sound02") { SoundPlayer snd = new SoundPlayer(Properties.Resources.sound02); }
   if (soundFile == "sound03") { SoundPlayer snd = new SoundPlayer(Properties.Resources.sound03); }
   if (soundFile == "sound04") { SoundPlayer snd = new SoundPlayer(Properties.Resources.sound04); }
   if (soundFile == "sound05") { SoundPlayer snd = new SoundPlayer(Properties.Resources.sound05); }
   etc.etc.etc.
}

使用参数指定播放参考资料中的哪个声音文件

好吧,在我发表这篇文章后不久,我就得到了答案…

public static void PlayMySound(Stream soundFile)
{
   SoundPlayer snd = new SoundPlayer(soundFile);
   snd.Play();
}
// Then I can just call it like this...
PlayMySound(Properties.Resources.sound01);
PlayMySound(Properties.Resources.sound02);