java语言的网络功能与编程
四、从网络上获取声音
Java从网络上获取声音文件并播放声音的编程方法有两类,一是利用Java提供的play(URL)及play(URL,String) 直接播放网络上的声音文件,另一类是通过getAudioClip(URL)或getAudioClip(URL,String)先从网络上获取声音文件,并生成AudioClip 类型的对象,然后对该对象进行操作。 网页教学网
前者的使用格式是:
String Audur = "结点URL";
try {
play(new URL(Audur));
} catch(Exception e){} 网页教学网
或
Webjx.Com
String Audur = "结点URL";
try {
Webjx.Com
play(new URL(Audur),声音文件名);
} catch(Exception e){}
后者使用的格式是: Webjx.Com
String Audur = "结点URL";
AudioClip loopClip;
Webjx.Com
try {
loopClip = getAudioClip(new URL(Audur)); 网页教学网
}
catch(Exception e){
System.out.println("Can´t open the URL "); Webjx.Com
} 网页教学网
或
String Audur = "结点URL";
AudioClip loopClip;
try {
loopClip = getAudioClip(new URL(Audur) ,声音文件名);
Webjx.Com
}
catch(Exception e){
System.out.println("Can´t open the URL ");
}
网页教学网
上面的四种格式都是将生成URL对象部分--“new URL(url)”直接作为play或getAudioClip的参数;和前面处理图象的例子一样,也可以先用“new URL(url)”获取一个URL对象, 再传给 play 或getAudioClip。如对第一种play(URL)的格式, 也可采用如下的编程格式: Webjx.Com
URL Audur =null;
try {
网页教学网
Audur=new URL("结点URL ");
} catch(Exception e){
Webjx.Com
System.out.println("Can´t open the URL ");
}
play(Audur);
下面对前述四种从网络上获取并播放声音文件的格式各举一简单的例子,
以作编程时参考: 网页教学网
●程序4 格式一 网页教学网
import java.applet.*; 网页教学网
import java.awt.*;
import java.net.*;
Webjx.Com
public class sound1 extends Applet
{ AudioClip loopClip;
public void paint(Graphics g) { 网页教学网
String Audur = "http://www.shu.edu.cn/~xyx/java/Animator/audio/bark.au"; 网页教学网
try { Webjx.Com
play(new URL(Audur));
} catch(Exception e){}
} 网页教学网
}
Webjx.Com
●程序5 格式二
import java.applet.*;
import java.awt.*; 网页教学网
import java.net.*;
网页教学网
public class sound2 extends Applet 网页教学网
{ AudioClip loopClip; Webjx.Com
public void paint(Graphics g) {
String Audur = "http://www.shu.edu.cn/~xyx/java/Animator/audio/";
try {
play(new URL(Audur),"bark.au"); 网页教学网
} catch(Exception e){}
}
}
●程序6 格式三
import java.applet.*;
import java.awt.*; Webjx.Com
import java.net.*;
Webjx.Com
public class sound extends Applet{
AudioClip loopClip; 网页教学网
public void init() {
String Audur = "http://www.shu.edu.cn/~xyx/java/Animator/audio/bark.au"; Webjx.Com
try {
loopClip = getAudioClip(new URL(Audur)); 网页教学网
} catch(Exception e){} 网页教学网
}
public void paint(Graphics g){ Webjx.Com
loopClip.loop(); 网页教学网
}
}
●程序7 格式四
import java.applet.*;
Webjx.Com
import java.awt.*;
import java.net.*;
public class sound0 extends Applet{
Webjx.Com
AudioClip loopClip;
URL auur;
public void init() {
Webjx.Com
try {
auur=new URL("http://www.shu.edu.cn/~xyx/java/Animator/audio/");
} 网页教学网
catch (MalformedURLException e) {
Webjx.Com
System.out.println("Can´t open the URL ");
}
loopClip = getAudioClip(auur,"bark.au");
}
public void paint(Graphics g){
loopClip.loop();
}
}





文章评论
共有 0 位网友发表了评论 查看完整内容