当前位置:  技术问答>java相关

紧急求助,在线等待!!!!!!!

    来源: 互联网  发布时间:2015-06-18

    本文导语:  小弟做毕业设计,在网上下载了一段代码,经过修改如下 import java.text.*; import java.net.*; import javax.swing.*; import javax.swing.tree.*; import java.awt.event.*; import java.awt.*; import java.applet.Applet; import java.io.*; import java.util.*; pu...

小弟做毕业设计,在网上下载了一段代码,经过修改如下
import java.text.*;
import java.net.*;
import javax.swing.*;
import javax.swing.tree.*;
import java.awt.event.*;
import java.awt.*;
import java.applet.Applet;
import java.io.*;
import java.util.*;

public class SuperLink extends Applet implements ActionListener, Runnable {
public static final String SEARCH = "Search";
    public static final String STOP = "Stop";
        
    Panel   panelMain;
    java.awt.List    listMatches;
    Label   labelStatus;

    // URLs to be searched
    Vector vectorToSearch;
    // URLs already searched
    Vector vectorSearched;
    // URLs which match
    Vector vectorMatches;

    Thread searchThread;

    TextField textURL;
    
    
    public void init(){
    // set up the main UI panel
panelMain = new Panel();
panelMain.setLayout(new BorderLayout(5, 5));

// text entry components
Panel panelEntry = new Panel();
panelEntry.setLayout(new BorderLayout(5, 5));

Panel panelURL = new Panel();
panelURL.setLayout(new FlowLayout(FlowLayout.LEFT, 5, 5));
Label labelURL = new Label("Starting URL: ", Label.RIGHT);
panelURL.add(labelURL);
textURL = new TextField("", 40);
panelURL.add(textURL);
panelEntry.add("North", panelURL);
panelMain.add("North", panelEntry);

// list of result URLs
Panel panelListButtons = new Panel();
panelListButtons.setLayout(new BorderLayout(5, 5));

Panel panelList = new Panel();
panelList.setLayout(new BorderLayout(5, 5));
Label labelResults = new Label("Search results");
panelList.add("North", labelResults);

Panel panelListCurrent = new Panel();
panelListCurrent.setLayout(new BorderLayout(5, 5));
listMatches = new java.awt.List(10);
panelListCurrent.add("North", listMatches);
labelStatus = new Label("");
panelListCurrent.add("South", labelStatus);
panelList.add("South", panelListCurrent);
panelListButtons.add("North", panelList);

// control buttons
Panel panelButtons = new Panel();
Button buttonSearch = new Button(SEARCH);
buttonSearch.addActionListener(this);
panelButtons.add(buttonSearch);
Button buttonStop = new Button(STOP);
buttonStop.addActionListener(this);
panelButtons.add(buttonStop);
panelListButtons.add("South", panelButtons);
panelMain.add("South", panelListButtons);
add(panelMain);
setVisible(true);
repaint(); 

// initialize search data structures
vectorToSearch = new Vector();
vectorSearched = new Vector();
vectorMatches = new Vector();

// set default for URL access

//URLConnection.setDefaultAllowUserInteraction(false);

}
    public void strat(){
    }
    public void stop(){
     if (searchThread != null) {
    setStatus("stopping...");
    searchThread = null;
}
    }
    public void destroy(){
    }
    void setStatus(String status) {
labelStatus.setText(status);
    }
    public void actionPerformed(ActionEvent event) {
String command = event.getActionCommand();

if (command.compareTo(SEARCH) == 0) {
    setStatus("searching...");

    // launch a thread to do the search
    if (searchThread == null) {
searchThread = new Thread(this);
    }
    searchThread.start();
}
else if (command.compareTo(STOP) == 0) {
    stop();
}
    }
    public void run() {
String strURL = textURL.getText();
if (strURL.length() == 0) {
    setStatus("ERROR: must enter a starting URL");
    return;
}

// initialize search data structures
vectorToSearch.removeAllElements();
vectorSearched.removeAllElements();
vectorMatches.removeAllElements();
listMatches.removeAll();

vectorToSearch.addElement(strURL);
while ((vectorToSearch.size() > 0) 
  && (Thread.currentThread() == searchThread)) {
    // get the first element from the to be searched list
    strURL = (String) vectorToSearch.elementAt(0);
    setStatus("searching " + strURL);

    URL url;
    try { 
url = new URL(/tech-qa-java/strURL/index.html);
    } catch (MalformedURLException e) {
setStatus("ERROR: invalid URL " + strURL);
break;
    }

    // mark the URL as searched (we want this one way or the other)
    vectorToSearch.removeElementAt(0);
    vectorSearched.addElement(strURL);

    // can only search http: protocol URLs
    if (url.getProtocol().compareTo("http") != 0) 
break;
    
      
  

    try {
// try opening the URL
URLConnection urlConnection = url.openConnection();

urlConnection.setAllowUserInteraction(false);

InputStream urlStream = url.openStream();


// search the input stream for links
// first, read in the entire URL
byte b[] = new byte[1000];
int numRead = urlStream.read(b);
String content = new String(b, 0, numRead);
while (numRead != -1) {
    if (Thread.currentThread() != searchThread)
break;
    numRead = urlStream.read(b);
    if (numRead != -1) {
String newContent = new String(b, 0, numRead);
content += newContent;
    }
}
urlStream.close();

if (Thread.currentThread() != searchThread)
    break;

String lowerCaseContent = content.toLowerCase();

int index = 0;
while ((index = lowerCaseContent.indexOf("

    
 
 

您可能感兴趣的文章:

  • 新手的求助,高分,在线等待
  • 紧急求助:redhat9启动后黑屏(在线等待~~)
  • 求助:rsh 连不上???——急,在显等待!!!!
  • 求助!在线等待~~~~
  • 在线等待,求助LINUX下串口问题
  • 在线等待求助!如何升级、安装glib-2.2.2?
  • 求助:Linux redhat 9.0 下声音的问题~~在线等待
  • 求助!!!!在线等待
  • 求助!!implements的用法与作用,那位大虾可以解释一下???(在线等待)
  • 我装了linux8。0后不能启动windows me了。怎么办?求助!!在线等待!
  • linux学习新手,求助,等待。。。。
  • 急,急!!在线等待,求助linux安装问题
  • 等待高手,百分求助:patchadd时出错(for solaris9)[在线等] iis7站长之家
  • 求助!!关于两行代码的理解问题!请大虾近来看看!!(在线等待)
  • 高分求助,在线等待:关于TOMCAT的配置问题
  • 来者有分,在线等待!100分求助:我在用JBuild运行JAVA代码时,出现下面的Message,为什么?
  • 150分求助 EJB弱问题[关于部署] -------- 在线等待! 立即接分
  • 高分求助,请教关于在ARM Linux下启动goahead服务器的问题。很急,在线等待,希望各位大虾帮帮,万分感激
  • 高分求助:关于自定义Table控件的问题!在线等待。。。
  • 在线等待:JBuilder 7.0的注册码求助
  • 在线求助!关于如何使用“信号”的方式来响应键盘按下的消息!在线急盼回复!
  • 急!!!小弟刚刚接触linux 在线求助<很简单的问题>
  • 在线求助:找不到猫,
  • 在线求助:苹果机无法启动!!
  • 求助:linux下网卡问题(内详,在线等)
  • 在线紧急求助
  • 高分求助在线等...连接池的问题
  • 紧急求助!!!!!!在线等啊
  • 高分求助,在线等
  • 在线求助!!急!!!!!
  • 求助!!!! GREP 、FIND问题 (在线等)
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 高分求助高分求助高分求助高分求助高分求助高分求助
  • 怎样读取HZK24S前十区的内容啊???求助求助
  • 紧急求助!紧急求助!
  • 【求助】iplanet问题,求助高手解答!
  • 菜鸟求助,solaris下计算问题求助
  • 【求助】SOS紧急求助..............极为简单的问题...跪求....
  • 高分求助啊!求助SUSE 10.0 不能上网.
  • 急急急急急急急啊,紧急求助啊!!!!!满分求助啊!!!!!!
  • 求助:linux下 vim的配置(高分求助)
  • red hat怎么安装gcc啊!总是出错,求助求助啊!!!yum源怎么改啊!!
  • 求助~~求助 ~~linux文件读写问题
  • 求助:信号 --13 进程中断
  • 求助,安装了红帽子后进不了
  • 新装linux求助
  • linux的 iptables问题求助
  • (高分求助)请问,那里有软件开发的<设计文档>
  • 一个简单的问题,高分求助!!!
  • 紧急求助:Unix下给文件夹重命名用什么命令?谢谢!!!!
  • VJ的一个问题,高分求助,熟悉VJ得请进!
  • 高分求助


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3