用JAVA编写的一个简易浏览器。

作者&投稿:钱矿 (若有异议请与网页底部的电邮联系)
怎样用Java制作一个简单浏览器解决方法~

jframe 加上 url

for循环遍历即可、然后"XXX".equals(charAt(i)),用什么indexOf()和substring把简单的问题弄的那么复杂干嘛!

import java.awt.*;
import java.awt.event.*;
import java.net.*;
import java.io.*;
import javax.swing.*;
import javax.swing.text.DefaultStyledDocument;

//HTTP连接与浏览

public class HTTPBrowser extends JFrame{
JTextField jtfAddress; //输入html文件地址或网址
JTextPane jtpShow; //显示页面
JTextArea jtaSource; //显示HTML源文件

public HTTPBrowser(){
super("HTTP连接与浏览"); //调用父类构造函数
jtfAddress=new JTextField(30); //实例化地址输入框
jtpShow=new JTextPane(); //实例化显示内容框
jtaSource=new JTextArea();

JPanel p1=new JPanel(); //实例化面板
JSplitPane spane=new JSplitPane(JSplitPane.VERTICAL_SPLIT); //实例化分隔面板
p1.add(new JLabel("地址")); //增加组件到面板上
p1.add(jtfAddress);
spane.add(new JScrollPane(jtpShow),JSplitPane.TOP);
spane.add(new JScrollPane(jtaSource),JSplitPane.BOTTOM);
spane.setDividerLocation(130); //设置分隔位置
spane.setDividerSize(2); //设置分隔栏尺寸
Container container=getContentPane(); //得到容器
container.add(p1,BorderLayout.NORTH); //增加组件到容器上
container.add(spane,BorderLayout.CENTER);

jtfAddress.addActionListener(new ShowHTMLListener()); //输入地址文本域事件处理

setSize(380,300); //设置窗口尺寸
setVisible(true); //设置窗口可视
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); //关闭窗口时退出程序
}

class ShowHTMLListener implements ActionListener {
public void actionPerformed(ActionEvent event) {
try{
URL address=new URL(jtfAddress.getText()); //得到HTML页面的URL地址
jtpShow.setContentType("text/html"); //设置内容格式
jtpShow.setPage(address); //设置显示页面

BufferedReader in= new BufferedReader(new InputStreamReader(address.openStream())); //获取输入流
String line;
StringBuffer content = new StringBuffer(); //文件内容
while ((line = in.readLine()) != null) { //读取文件
content.append(line+"\n");
}
jtaSource.setText(new String(content)); //设置显示文本
in.close(); //关闭输入流
}
catch (Exception ex){
ex.printStackTrace(); //输出出错信息
}
}
}

public static void main(String[] args){
new HTTPBrowser();
}
}

这还有一个

import java.awt.*;
import java.awt.event.*;
import java.net.URL;
import javax.swing.*;

//html浏览器

public class HTTPBrowserDemo extends JFrame{
JTextField jtfAddress; //输入html文件地址或网址
JButton jbGo; //转到文件按钮
JTextPane jtpShow; //显示文件
JLabel jlInfo; //提示信息

public HTTPBrowserDemo(){
super("html浏览器"); //调用父类构造函数
jtfAddress=new JTextField(20); //实例化地址输入框
jbGo=new JButton("转到"); //实例化转向按钮
jtpShow=new JTextPane(); //实例化显示内容框
jlInfo=new JLabel(); //实例化信息提示标签

JPanel panel=new JPanel(); //实例化面板
panel.add(new JLabel("地址")); //增加组件到面板上
panel.add(jtfAddress);
panel.add(jbGo);
JScrollPane jsp=new JScrollPane(jtpShow); //实例化滚动窗体
Container container=getContentPane(); //得到容器
container.add(panel,BorderLayout.NORTH); //增加组件到容器上
container.add(jsp,BorderLayout.CENTER);
container.add(jlInfo,BorderLayout.SOUTH);

jbGo.addActionListener(new ShowHTMLListener()); //事件处理,发生按钮点击时显示页面内容
jtfAddress.addActionListener(new ShowHTMLListener());

setSize(350,280); //设置窗口尺寸
setVisible(true); //设置窗口可视
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); //关闭窗口时退出程序
}

class ShowHTMLListener implements ActionListener { //显示页面内容事件处理
public void actionPerformed(ActionEvent event) {
try{
jlInfo.setText("正在连接..."); //显示提示信息
URL address=new URL(jtfAddress.getText()); //得到HTML页面的URL地址
jtpShow.setPage(address); //设置显示页面
jlInfo.setText("完成");
}
catch (Exception ex){
jlInfo.setText("连接出错");
ex.printStackTrace(); //输出出错信息
}
}
}

public static void main(String[] args){
new HTTPBrowserDemo();
}
}

地址栏如果有变化就不正常了,因为在你的代码中并没有执行更改地址栏的语句:
combol.setSelectedIndex() 或 combol.setSelectedItem();

用 JEditorPane 做一个类似浏览器显示的网页效果很难看。
有很多css,javascript无法正常解析。
如果一个网页中只含有 <div> <table> 这样的,还好些。

网页做的越漂亮(因为要做的漂亮就要用到css样式),显示出来越难看。


什么是Java语言?
3、分布式:Java是分布式语言,只要用Java编写了一个程序,就可以到处运行使用,可以节省大量的人力物力。4、健壮性:Java是被设计出来写高可靠性稳健软件的,所以用Java写可靠的软件很容易。5、安全性:用Java语言进行编程可以预防恶意代码 6、平台独立与可移植性:Java并不依赖平台,用Java编写的程序可以...

急!用JAVA编一个小型计算器
二、实验内容:用图形界面工具,结合事件处理机制,编写JavaApplication程序,实现一个可视化的计算器。三、实验要求:1.必须采用一种布局管理器;2.使用标签、按钮、文本框绘制一个计... 二、实验内容:用图形界面工具,结合事件处理机制,编写Java Application程序,实现一个可视化的计算器。三、实验要求:1. 必须采用一种...

编写一个Java程序,接受用户输入的一个1~12之间的整数,利用Switch语句输出...
import java.util.Scanner;public class xxx { \/ param args \/ public static void main(String[] args) { Scanner scan = new Scanner(System.in);int i = scan.nextInt();if (i<1&&i>12) { System.out.println("请重新输入月份");i = scan.nextInt();} switch(i){ case 1: ...

1、 编写一个Java程序,程序中有一个类Telephone, Telephone类中包含有...
package test;class Telephone{\/\/第一个类:Telephone public String name;\/\/品牌 public String num;\/\/号码 public int time;\/\/通话时间 public double result(){\/\/计算话费的方法,返回计算结果 return 0;} public String toString(){\/\/显示信息方法 return "品牌:"+name+" 号码:"+num+" ...

编写一个Java程序,开始时生成一个0-9的随机数字,当用户会员号的百位与...
int firstNum; \/\/ 声明一个变量记录百位 int nextNum; \/\/ 声明一个变量记录十位 String buff = new Integer(userNumber).toString(); \/\/ 把 用户号码转换成字符串 if (buff.length() == 3) { \/\/ 判断生成的用户号码是否 大于 100 firstNum = Integer.parseInt(buff.substring(0, 1)); ...

编写一个 Java 字符界面程序,在键盘上输入一个 4 位的正整数,如果输入...
public class Demo { public static void main(String[] args) { Scanner scanner = new Scanner(System.in);int inputNum;for (; ; ) { System.out.println("请输入一个4位整数: ");inputNum = scanner.nextInt();if (inputNum > 0) { break;} } int sum = 0;String inputNumStr ...

编写一个Java程序,在测试类中创建一个Student的对象,修改该对象的年龄...
public class Student { \/** * @param sNo * @param sName * @param sSex * @param sAge * @param sGrade *\/ public Student(String sNo, String sName, String sSex, int sAge, String sGrade) { super(); this.sNo = sNo; this.sName = sName...

用Java中的面向思维思想编写一个计算器类,可以实现两个数的加,减,乘...
import java.awt.*;import javax.swing.*;import java.awt.event.*;class Counter extends WindowAdapter { static JFrame f=new JFrame("计算器");static JTextField text1=new JTextField("0.");static String source="";static String cal="";static String object="";static boolean flag=...

编写一个java应用程序,用户从键盘输入一个整数,判断这个数是几位数...
import java.io.IOException;public class Test { public static void main(String[] args) throws IOException { String userString = "";InputStreamReader reader = null;BufferedReader br = null;while (!"exit".equalsIgnoreCase(userString)) { System.out.print("输入一个数字:");reader = ...

编写一个Java应用程序,该程序包括3个类:Monkey类、People类和主类 E...
public class Monkey{ public Monkey (String s){ System.out.println(s);} public void speak(){ System.out.println("咿咿呀呀...");} } public People extends Monkey { public People() {} public void speak(){ System.out.println("小样的,不错嘛!会说话了!");} public void thi...

武平县19328056008: 怎样用Java制作一个简单浏览器 -
迪泪杞药: java制作浏览器的话,可以考虑使用android来制作一个,简单实现加载网页资源等等.

武平县19328056008: 怎样用Java制作一个简单浏览器解决方法 -
迪泪杞药: import javax.swing.*; import java.awt.*; import java.awt.event.*; import java.net.*; import java.io.*; import javax.swing.event.*; @SuppressWarnings("serial") class Win3 extends JFrame implements ActionListener,Runnable {JButton button; URL ...

武平县19328056008: 用JAVA编写的一个简易浏览器. -
迪泪杞药: 地址栏如果有变化就不正常了,因为在你的代码中并没有执行更改地址栏的语句:combol.setSelectedIndex() 或 combol.setSelectedItem(); 用 JEditorPane 做一个类似浏览器显示的网页效果很难看.有很多css,javascript无法正常解析.如果一个网页中只含有 <div> <table> 这样的,还好些.网页做的越漂亮(因为要做的漂亮就要用到css样式),显示出来越难看.

武平县19328056008: 用java做一个简易浏览器 -
迪泪杞药: 地址栏如果有变化就不正常了,因为在你的代码中并没有执行更改地址栏的语句:combol.setselectedindex() 或 combol.setselecteditem(); 用 jeditorpane 做一个类似浏览器显示的网页效果很难看.有很多css,javascript无法正常解析.如果一个网页中只含有 这样的,还好些.网页做的越漂亮(因为要做的漂亮就要用到css样式),显示出来越难看.

武平县19328056008: 如何用java做简易浏览器 跪求源码
迪泪杞药: 一个很简单的 你把下面第一段 保存在记事本里,改名为 time.html 第一段 &lt;!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"&gt; &lt;html xmlns="http://www.w3....

武平县19328056008: 用Java编写个浏览器,输入字符串以及需要查到的字符 -
迪泪杞药: Scanner input = new Scanner(System.in); System.out.print("请输入一段字符:"); String s = input.next(); System.out.println("请输入要查询的字符串:"); String a = input.next(); int index = s.indexOf(a); List ls = new ArrayList(); while ...

武平县19328056008: 用Java语言,开发一个网页浏览器,要求通过在地址栏中输入URL地址,可以访问相应的网页;查看指定 -
迪泪杞药: 1,电脑联网; 2,input构造一个输入框; 3,iframe构造下部; 4,将输入的url地址替换到iframe的src中,就可以了

武平县19328056008: java开发一个简单的web网页的具体流程是什么? -
迪泪杞药: web网页的主要流程就是 从请求到响应,从jsp页面的参数传递到后台的 控制层(action)再调用相应的服务层(service)进行处理,其中可能会用到数据层(dao),将处理后的结果响应给页面,或是跳转

武平县19328056008: java 编写一个字符浏览器 -
迪泪杞药: import java.util.scanner; //引入scanner类该类封装了接收用户输入参数的一些操作 写方法体 public static void main(string[] arg) { scanner input=new scanner(system.in); //定义一个从系统缓存读取数据的对偶 string str=scanner.next(); //从缓存中读出数据 system.out.println(str); }

武平县19328056008: 用java编写一个图片浏览器 -
迪泪杞药: import java.awt.BorderLayout; import java.awt.Graphics; import java.awt.GridLayout; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.io.File; import java.util.ArrayList; import javax.swing.ImageIcon; import javax....

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网