Java URL网络功能与编程Word文档下载推荐.docx
- 文档编号:19522559
- 上传时间:2023-01-07
- 格式:DOCX
- 页数:15
- 大小:19.46KB
Java URL网络功能与编程Word文档下载推荐.docx
《Java URL网络功能与编程Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《Java URL网络功能与编程Word文档下载推荐.docx(15页珍藏版)》请在冰豆网上搜索。
privateImageimage;
publicvoidinit(){
image=getImage(getDocumentBase(),“test.gif“);
}
publicvoidpaint(Graphicsg){
g.drawImage(image,0,0,this);
这是一个最简单的获取并显示图象的例子,在该例中,先用getImage(getDocumentBase(),图象文件名)从HTML文档所在位置调用图象test.gif,并由此生成一个Image类型的对象image,然后用drawImage(image,0,0,this)在屏幕上将图象显示出来。
如果想从网络上其他结点获取图象,关键是创建对应于网络上其他结点的Image类型的对象,一旦获得Image类型的对象获得了,便可以对其进行任何可能的图象操作。
Java提供了如下方法可以创建对应于其他结点的图象:
getImage(newURL(字符串))
其使用格式可有两种:
Stringurl=“结点URL“;
Imageimage;
try{
image=getImage(newURL(url));
}
catch(Exceptione){
System.out.println(“Can‘topentheURL“);
或
URLimgur=null;
try{
imgur=newURL(“结点URL“);
catch(MalformedURLExceptione){
image=getImage(imgur);
前一种格式用“newURL(url)”生成URL对象,并直接作为getImage的参数,后一种格式先用“newURL(url)”生成一URL对象,再传给getImage。
两种格式本质上是一样的。
两种格式中,生成URL对象的部分都包含在
try{
获取URL对象
catch(MalformedURLExceptione){
出错提示
中。
例如要调用
●程序2
import.*;
publicclassimagextendsApplet{
publicvoidinit(){
Stringurl=“
}catch(Exceptione){}
第二种格式完整的程序如下:
●程序3
publicclassimag2extendsApplet{
imgur=newURL(“
将上述两个程序分别以imag.java和imag2.java存盘,执行javacimag.java和javac
imag2.java,将得到编译后生成的imag.class和imag2.class,最后创建调用这两个Java
Applet的HTML文档,如imag.class对应的HTML文档可如下:
<
html>
head>
title>
Example<
/title>
/head>
center>
appletcode=imag.classwidth=550height=250>
/applet>
/html>
将该HTML文档存入test.html文件,用Netscape打开,如果你的计算机连入了Internet,便可以看到JavaApplet所显示的从网络上获得的图象了。
(对于本文中其他不同的JavaApplet,对应的HTML文档只要修改其中相应的“code=imag.class”即可。
)
3.从网络上获取声音
Java从网络上获取声音文件并播放声音的编程方法有两类,一是利用Java提供的play(URL)及play(URL,String)直接播放网络上的声音文件,另一类是通过getAudioClip(URL)或getAudioClip(URL,String)先从网络上获取声音文件,并生成AudioClip类型的对象,然后对该对象进行操作。
前者的使用格式是:
StringAudur=“结点URL“;
play(newURL(Audur));
}catch(Exceptione){
play(newURL(Audur),声音文件名);
catch(Exceptione){
后者使用的格式是:
AudioCliploopClip;
loopClip=getAudioClip(newURL(Audur));
loopClip=getAudioClip(newURL(Audur),声音文件名);
上面的四种格式都是将生成URL对象部分--“newURL(url)”直接作为play或getAudioClip的参数;
和前面处理图象的例子一样,也可以先用“newURL(url)”获取一个URL对象,再传给play或getAudioClip。
如对第一种play(URL)的格式,也可采用如下的编程格式:
URLAudur=null;
Audur=newURL(“结点URL“);
}catch(Exceptione){
play(Audur);
下面对前述四种从网络上获取并播放声音文件的格式各举一简单的例子,以作编程时参考:
●程序4格式一
publicclasssound1extendsApplet{
StringAudur=““;
●程序5格式二
publicclasssound2extendsApplet{AudioCliploopClip;
StringAudur=“
play(newURL(Audur),“bark.au“);
●程序6格式三
publicclasssoundextendsApplet{
privateAudioCliploopClip;
publicvoidpaint(Graphicsg){
loopClip.loop();
●程序7格式四
publicclasssound0extendsApplet{
URLauur;
try{
auur=newURL(“
}
loopClip=getAudioClip(auur,“bark.au“);
}
4.显示网络上其他HTML文档
利用Java提供的getAppletContext().showDocument(URL)可以显示其他结点的HTML文档,同前面的显示网络上其他结点的图象,有两种格式,下面各举一例:
●程序8格式一
publicclassshowdocextendsApplet{
URLdocur=null;
docur=newURL(““);
if(docur!
=null){
getAppletContext().showDocument(docur,“_blank“);
●程序9格式二
publicclassshowdoc2extendsApplet{
privateURLdocur=null;
getAppletContext().showDocument(newURL(“
5.读取网络上文件内容
前述的网络功能只是显示或播放网络上结点的图象、声音及HTML文档,并没有对其内容进行处理。
事实上,Java还可读取网络上文件的内容,并对其内容进行处理。
读取网络上文件内容的步骤可如下:
1.创建一个URL类型的对象
如:
Stringurl=“ftp:
//202.120.127.218/incoming/test/readtxt.html“;
URLfileur;
fileur=newURL(url);
catch(MalformedURLExceptione){
System.out.println(“Can‘tgetURL:
“);
2.利用URL类的openStream(),获得对应的InputStream类的对象如:
InputStreamfilecon=fileur.openStream();
3.将InputStream对象转化为DataInputStream类的对象如:
DataInputStreamfiledata=newDataInputStream(filecon);
4.读取内容
如对前面的filedata,可用filedata.readLine()一行一行读取内容,或用filedata.readChar()一个字符一个字符读取内容。
对读取到的内容,可由JavaApplet进行各种处理,并将处理结果用各种方式显示出来。
●程序10
importjava.io.*;
publicclassshowfileextendsApplet{
TextAreashowarea=newTextArea(“Pleasewaitawhileforgettext“,10,70);
Stringurl=““;
catch(MalformedURLExceptione){
System.out.println(“Can‘tgetURL:
add(showarea);
InputStreamfilecon=null;
DataInputStreamfiledata=null;
Stringfileline;
filecon=fileur.openStream();
filedata=newDataInputStream(filecon);
while((fileline=filedata.readLine())!
=null){
showarea.appendText(fileline+“n“);
}
catch(IOExceptione){
System.out.println(“ErrorinI/O:
“+e.getMessage());
6.动态使用网络上资源
在前面介绍的例子的基础上,可以动态地利用网络上的资源。
其方法是编制一个线程,每隔一定时间自动到相应结点读取最新的内容。
本文对线程的编制不再展开,读者可参考有关文章或直接套用下面的例子。
//程序11
publicclassdynashowextendsjava.applet.AppletimplementsRunnable{
privateThreaddthread;
privateURLfileur;
privateTextAreashowarea=newTextArea(“Waitforawhile...“,10,70);
Stringurl=“;
publicvoidstart(){
if(dthread==null){
dthread=newThread(this);
dthread.start();
publicvoidstop(){
if(dthread!
dthread.stop();
dthread=null;
publicvoidrun(){
DataInputStreamfiledata=null;
while(true){
filecon=fileur.openStream();
catch(IOExceptione){
dthread.sleep(5000);
catch(InterruptedExceptione){
repaint();
7.Java网络能力的限制
出于安全性考虑,在用netscape浏览时,JavaApplet只能和其所在的主机建立连接,因此,前面的程序编译后大部分只能存放在对应的主机上。
存放到其他主机时需更改程序中的结点地址。
否则浏览器将显示安全出错。
但对显示网络上其他HTML文档没有此限制(如程序8、9),读者可以将程序编译后放到任意WWW服务器或FTP服务器,均可正常运行。
此外,当浏览器从本地盘打开调用JavaApplet的HTML文档时,也不受此限制。
因此,本文所有的程序都可存放在本地盘编译,只要用netscape的File/OpenFile菜单打开,便可正确运行。
对于另一种Java程序--JavaApplication,也无此限制,例如对于读取网络上文件内容的程序10,对应的JavaApplication可作如下编程:
●程序11
publicclassshowfile2{
publicstaticvoidmain(Stringargs[]){
while((fileline=filedata.readLine()
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Java URL网络功能与编程 URL 网络 功能 编程