java swt实现播放音乐代码如下:
成都创新互联公司是专业的潞州网站建设公司,潞州接单;提供成都做网站、网站建设,网页设计,网站设计,建网站,PHP网站建设等专业做网站服务;采用PHP框架,可快速的进行潞州网站开发网页制作和功能扩展;专业做搜索引擎喜爱的网站,专业的做网站团队,希望更多企业前来合作!
public void play(String Filename)
{
try{
// 用输入流打开一音频文件
InputStream in = new FileInputStream(Filename);//FIlename 是你加载的声音文件如(“game.wav”)
// 从输入流中创建一个AudioStream对象
AudioStream as = new AudioStream(in);
AudioPlayer.player.start(as);//用静态成员player.start播放音乐
//AudioPlayer.player.stop(as);//关闭音乐播放
//如果要实现循环播放,则用下面的三句取代上面的“AudioPlayer.player.start(as);”这句
/*AudioData data = as.getData();
ContinuousAudioDataStream gg= new ContinuousAudioDataStream (data);
AudioPlayer.player.start(gg);// Play audio.
*/
//如果要用一个 URL 做为声音流的源(source),则用下面的代码所示替换输入流来创建声音流:
/*AudioStream as = new AudioStream (url.openStream());
*/
} catch(FileNotFoundException e){
System.out.print("FileNotFoundException ");
} catch(IOException e){
System.out.print("有错误!");
}
}
我给你一段代码吧,你可以试着修改着用bgsound
src="music/shouye.mp3"
loop="-1"
/你可以把代码复制到/head后面,“music/shouye.mp3”部分注意换成你自己音乐文件的位置(地址可以不用手动输入,直接打空格scr=后可以选择)。其中
loop代表循环="-1"代表循环无穷次。
public class Sing {
public void sing(String fileName) {// fileName为加载声音文件的相对路径
URL url = test.class.getResource(fileName);//
// 此句不要的话,fileName就只能是声音文件的绝对路径,为可移
// 植起见,建议不要省略
try {
InputStream is = url.openStream();// 获得音乐文件的输入流
//InputStream is = new FileInputStream(new File(fileName));
AudioStream as = new AudioStream(is);
AudioPlayer.player.start(as);// 用AudioPlayer静态成员player.start播放音乐
} catch (FileNotFoundException e) {
JOptionPane.showMessageDialog(null, "音乐文件未找到!", "错误提 示",
JOptionPane.WARNING_MESSAGE);
} catch (IOException e) {
JOptionPane.showMessageDialog(null, "出现未知错误!", "错 误",
JOptionPane.ERROR_MESSAGE);
}
}
public void loopSing(final String fileName) {// fileName为加载声音文件的相对路径
final URL url = test.class.getResource(fileName);//
// 此句不要的话,fileName就只能是声音文件的绝对路径,为可移
// 植起见,建议不要省略
new Thread() {
public void run() {
while (true) {
try {
InputStream is = url.openStream();
AudioStream as = new AudioStream(is);
AudioPlayer.player.start(as);// 用AudioPlayer静态成员player.start播放音乐
Thread.sleep(57500);
} catch (FileNotFoundException e) {
JOptionPane.showMessageDialog(null, "音乐文件未找到!",
"错误提 示", JOptionPane.WARNING_MESSAGE);
} catch (IOException e) {
JOptionPane.showMessageDialog(null, "出现未知错误!", "错 误",
JOptionPane.ERROR_MESSAGE);
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
}.start();
}
}
以前写的一段代码。你看看吧。好像只能播放wav格式的
URL url = test.class.getResource(fileName);
test是和wav放在同一个文件夹下的Java类,用来做标识的,里面没东西。
可以通过Service来播放背景音乐,以下是实现代码:
1.在AndroidManifest.xml文件中的application标签内加入下边语句
service android:name=".MusicServer"
intent-filter
action android:name="com.angel.Android.MUSIC"/
category android:name="android.intent.category.default" /
/intent-filter
/service
2.新建MusicServer.java类,内容为
import android.app.Service;
import android.content.Intent;
import android.media.MediaPlayer;
import android.os.IBinder;
public class MusicServer extends Service {
private MediaPlayer mediaPlayer;
@Override
public IBinder onBind(Intent intent) {
// TODO Auto-generated method stub
return null;
}
@Override
public void onStart(Intent intent,int startId){
super.onStart(intent, startId);
if(mediaPlayer==null){
// R.raw.mmp是资源文件,MP3格式的
mediaPlayer = MediaPlayer.create(this, R.raw.abc);
mediaPlayer.setLooping(true);
mediaPlayer.start();
}
}
@Override
public void onDestroy() {
// TODO Auto-generated method stub
super.onDestroy();
mediaPlayer.stop();
}
}
3.将歌曲放入raw文件夹下,名称为abc。
4.在Activity中加入代码
private Intent intent = new Intent("com.angel.Android.MUSIC");
onCreate方法中加入startService(intent);
就可以播放了。
用java.applet包的AudioClip接口添加音效。很简单:
AudioClip bgSound=Applet.newAudioClip(YOURCLASSNAME.class.getClassLoader().getResource("/move.wav"));
bgSound.play();
注:
1.这里用到了反射机制,YOURCLASSNAME 指你加载声音的语句所在的类的类名
2.这里,音乐文件位于class文件所在的文件夹内
3.支持后缀名为wav和mid的声音文件
不知道你是在java里哪添加?Swing界面中吗?
下面这个是我之前做Swing界面程序时添加音乐的代码,希望对你有帮助
AudioClip[] musics;//定义音乐集合
musics = new AudioClip[2];//初始化
URL url1 = this.getClass().getResource("/ReadyGo.WAV"); //定义音乐文件地址
URL url2 = this.getClass().getResource("/back1.mid"); //定义音乐文件地址
musics[0] = JApplet.newAudioClip(url1);
musics[1] = JApplet.newAudioClip(url2);
musics[0].play();//音乐开始执行
musics[1].stop();//停止播放