前言:

     第个java程序了,现在到了网络服务访问网络资源部分了。首先主要说一下这次的三个小程序就是测试URL网络资源定位符访问网络文件访问网络图像文件。其中,访问的都是我自己的网络,现在它已经被改得面目全非了。因为之前做的不符合定位(链接不符合),我就都删了内容,现在只剩下一个空壳“哈哈”。
     我们一起来看看程序吧,来看第一个URL测试。
     依旧是老方法,项目,包,引用,主类,主方法。

一、统一资源定位符类URL

package shiyan;
import java.net.*;//导入java.net网络包中的类
import java.io.*;//导入java.io输入流包中的类
//访问网络资源
//统一资源定位符类URL
public class eight1 {//统一资源定位符URL的用法
	public static void main(String args[]) {//主方法
		try {//处理可能出现的勾选异常MalformedURLException
			URL url = new URL("http://www.mythreecat.top");
			System.out.println("URL:"+url);
			System.out.println("协议:"+url.getProtocol());
			System.out.println("主机:"+url.getHost());
			System.out.println("端口:"+url.getPort());
			System.out.println("默认端口:"+url.getDefaultPort());
			System.out.println("路径:"+url.getPath());
		}
		catch(MalformedURLException e) {e.printStackTrace();}
	}	
}

     利用网络包中的类就可以轻易的得到这些内容了,大家可以试试呀。

运行如下:

Java的Pictures如何使用_System

二、访问并读取Web服务里的网页文件

package shiyan;
import java.net.*;
import java.io.*;
//访问并读取Web服务里的网页文件
public class eight2 {
	public static void main(String []args) {
		try{//处理可能出现的勾选异常IOException
			URL url = new URL("http://www.mythreecat.top");
			System.out.println("从网页读取信息:"+url);
			InputStreamReader in  =new InputStreamReader(url.openStream());
			char cbuf[] = new char[3000];//只读3000个字符
			int len = in.read(cbuf);
			for(int n = 0;n<len;n++) 
				System.out.print(cbuf[n]);
			System.out.print("字符编码是:"+in.getEncoding());
			in.close();
			}
		catch(IOException e) {e.printStackTrace();}//捕捉并处理异常
		}
	}

     这里可以看到我自己网络的主页的一些代码,自己可以更改网页,可以更改读取的字符数,可以看到更多的信息(爬取???

运行如下:

Java的Pictures如何使用_java_02

三、访问Web服务里图像文件

package shiyan;
//访问Web服务里图像文件
import java.net.*;
import java.io.*;
import java.awt.*;
import java.awt.image.BufferedImage;
import javax.imageio.ImageIO;
import javax.swing.*;
public class eight3 {
	public static void main(String []args) {
		try {
			String netURL = "http://www.mythreecat.top/images/ban15.jpg";
			System.out.println("从网站读取图片:"+netURL);
			URL url = new URL(netURL);
			BufferedImage img = ImageIO.read(url);//加载网络图像
			//创建框架窗口,显示加载的网络图像
			JFrame w = new JFrame("显示网络图片");//创建窗口
			w.setSize(850,610); w.setVisible(true);
			w.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
			SwingUtilities.invokeLater(()->{//在事件分发线程中绘图
			Graphics g = w.getGraphics();//获取绘图对象
			g.setFont(new Font("Times New Rome",0,24));//设置字体
			g.drawString(netURL,10,75);//显示网址
			g.drawImage(img,10,100,null);//显示图像
		});
	}
	catch(IOException e) {e.printStackTrace();}//捕捉并处理勾选异常
}}

     这个的话,你可能不知道图像存在哪里,这样你只需要打开这个页面,然后进行F12,就可以看到图片的位置,例如我自己的这个网页:

Java的Pictures如何使用_System_03


     利用这个方法也可以得到很多图片显示效果,当然啦,个人觉得还是不方便(哈哈哈哈)

运行如下:

Java的Pictures如何使用_java_04

后记:

     继续冲鸭!!!有误的可以评论指出哦,谢谢。