资源描述:
《第9章 网络多媒体应用》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、第九章网络多媒体应用9.1网络编程基础(URL编程和Socket编程)9.1.1URL编程URL(UniformResourceLocator,统一资源定位器)用于表示Internet上资源的地址,即网络上数据的位置.资源为文件,目录,对象的引用.利用URL的表示和建立,Java程序可直接读入网络上的数据,或把数据传送到网络的另一端.Java.net包定义了对应的URL类.其常用4个构造方法如下:(1)publicURL(Stringspec);//这个构造方法用指定的URL来创建URL对象,参数为URL的IP
2、地址和文件如:try{URLu1=newURL("http://www.163.com.cn/default.html");}catch(MalformedURLExceptione){…….}(2)publicURL(URLcontext,Stringspec);//该构造方法用已存在的URL对象的context创建URL对象例如:try{URLu2=newURL(u1,welcome.html);}catch(MalformedURLExceptione){…….}(3)publicURL(Stringpr
3、otocol,Stringhost,Stringfile);//该构造方法用指定的协议,主机名,路经及文件名创建的URL对象例如:try{URLu3=newURL("http","www.sun.com","index.html");}catch(MalformedURLExceptione){…….}(4)publicURL(Stringprotocol,Stringhost,intport,Stringfile);//该构造方法用指定的协议,主机名,端口号,文件路经及文件名创建的一个URL对象例如:try{
4、URLu3=newURL("http","www.sun.com",8080,"index.html");}catch(MalformedURLExceptione){…….}使用URL类的openStream()方法可以连接和获取URL对象的内容(即返回一个输入流对象读URL数据)方法格式为:publicfinalInputStreamopenStream()throwsIOExceptionURL类的常用方法:publicfinalObjectgetContent()----取的传输协义.publicStr
5、inggetFile()----取的资源文件名.publicStringgetHost()----取的主机名.publicStringgetPort()----取的端口号.publicStringgetProtocol()----取的传输协义.publicStringtoString()----用于把URL转化为字符串.例:URL编程读取yahoo站点地址的内容importjava.io.*;importjava.net.*;classURLReader{publicstaticvoidmain(Stringa
6、rgs[]){try{28//用指定的URL来创建URL对象URLtirc=newURL("http://cn.yahoo.com/");//创建缓冲区输入流BufferedReaderin=newBufferedReader(newInputStreamReader(tirc.openStream()));Strings;//接收数据的字符串变量swhile((s=in.readLine())!=null)System.out.println(s);in.close();//关闭BufferedReader输
7、入流.}catch(MalformedURLExceptione){//捕捉URL缺陷异常System.out.println(e);//输出缺陷异常信息}catch(IOExceptione){//捕捉I/O异常System.out.println(e);}}}tirc.openStream()//用创建URL对象tirc的openStream()方法建立到当前URL(http://cn.yahoo.com)的连接并返回一个从该连接地址读取数据的输入流对象InputStreamReader(InputStre
8、amin)//从字节流到字符流的桥梁:它读取字节流并转为字符流.in一个输入流由tirc.openStream()代表输入流,并用new创建字节流转为字符流对象BufferedReader(Readerinintsz)//构造方法参数in—阅读器,sz—输入缓冲区大小.本例创建一个缓冲字符输入流对象,用in引用它,输入缓冲区大小为默认.再调用它的读入行方法将字符流赋给(存入)变量s中,