服务热线:13616026886

技术文档 欢迎使用技术文档,我们为你提供从新手到专业开发者的所有资源,你也可以通过它日益精进

位置:首页 > 技术文档 > JAVA > 新手入门 > 基础入门 > 查看文档

java的网络功能与编程4

五、显示网络上其他html文档

利用java提供的getappletcontext().showdocument(url)可以显示其他结点的html文档,同前面的显示网络上其他结点的图象,有两种格式,下面各举一例:

●程序8 格式一

import java.applet.*;

import java.awt.*;

import java.net.*;

public class showdoc extends applet

{

url docur= null;

public void paint(graphics g) {

try {

docur=new url("http://www.shu.edu.cn/~xyx/doc/manhua.html");

}

catch (malformedurlexception e) {

system.out.println("can´t open the url ");

}

if (docur != null) {

getappletcontext().showdocument(docur,"_blank");

}

}

●程序9 格式二

import java.applet.*;

import java.awt.*;

import java.net.*;

public class showdoc2 extends applet

{

url docur= null;

public void paint(graphics g) {

try {

getappletcontext().showdocument(new url("http://www.shu.edu.cn/

~xyx/doc/manhua.html"));

}

catch (malformedurlexception e) {

system.out.println("can´t open the url ");

}

}

六、读取网络上文件内容

前述的网络功能只是显示或播放网络上结点的图象、 声音及html文档,并没有对其内容进行处理。事实上,java还可读取网络上文件的内容,并对其内容进行处理。

读取网络上文件内容的步骤可如下:

1. 创建一个url类型的对象

如:

string url = "ftp://202.120.127.218/incoming/test/readtxt.html";

url fileur;

try {

fileur = new url(url); }

catch ( malformedurlexception e) {

system.out.println("can´t get url: " );

2. 利用url类的openstream(),获得对应的inputstream类的对象,如:

inputstream filecon = fileur.openstream(); 

3. 将inputstream对象转化为datainputstream类的对象,如:

datainputstream filedata = new datainputstream(filecon);

4. 读取内容

如对前面的filedata,可用filedata.readline() 一行一行读取内容,或用filedata.readchar一个字符一个字符读取内容。 对读取到的内容,可由java applet进行各种处理, 并将处理结果用各种方式显示出来。

下面的例子是读取 http://www.shu.edu.cn/~xyx/doc/manhua.html文件内容的例子,为简洁起见,该例中只将文件的内容逐行读出,并在文本区显示出来。

●程序10

import java.io.*;

import java.net.*;

import java.awt.*;

import java.applet.*;

public class showfile extends applet{

url fileur;

textarea showarea = new textarea("please wait a while for get

text",10,70);

public void init() {

string url = "http://www.shu.edu.cn/~xyx/doc/manhua.html";

try { fileur = new url(url); }

catch ( malformedurlexception e) {

system.out.println("can´t get url: " );

}

add(showarea);

}

public void paint(graphics g) {

inputstream filecon = null;

datainputstream filedata = null;

string fileline;

try {

filecon = fileur.openstream();

filedata = new datainputstream(filecon);

while ((fileline = filedata.readline()) != null) {

showarea.appendtext(fileline+"/n");

}

}

catch (ioexception e) {

system.out.println("error in i/o:" + e.getmessage());

}

}



扫描关注微信公众号