首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > Java面试 >

困扰了小弟我快半年的有关问题终于在春节当天解决,散分庆祝

2012-01-15 
困扰了我快半年的问题终于在春节当天解决,散分庆祝!曾在http://community.csdn.net/Expert/topic/5341/534

困扰了我快半年的问题终于在春节当天解决,散分庆祝!
曾在
http://community.csdn.net/Expert/topic/5341/5341889.xml?temp=.3290979
上留过一个问题,花了我100分,最终还是没有头绪,问题如下:
网页动态屏蔽:
        假设你现在在看我的帖子,看到的是屏蔽前的网页,但是,当运行网页动态屏蔽的java程序后,你所看到的却是

主  题:     高手请问:谁知道网页动态屏蔽的原理?  
***     ***:     java_road   ()                 Blog    
等  级:        
信   誉   值:     100    
所属社区:     Java   J2SE   /   基础类    
问题****:     100  
***次数:     4    
发表***:     2007-02-06   14:06:13  
现在程序源代码如下,其实这个功能还是有很多作用的,而且我又提倡开源,所以把代码公布出来,贡大家参考,当然功能的大部分工作还有待以后来完善!!!
import   javax.swing.*;
import   java.awt.*;
import   java.awt.event.*;
import   java.net.*;
import   java.io.*;
import   java.util.regex.*;
import   javax.swing.event.*;
class   Win1   extends   JFrame   implements   ActionListener,Runnable
{    
      JButton   button;
      URL   url,   newURL;
      JTextField   text;
      JEditorPane   editPane;  
      byte   b[]=new   byte[118];
      Thread   thread;
      Container   con=null;
      JPanel   p;
      public   Win1()
      {    
            text=new   JTextField(20);
            editPane=new   JEditorPane();
            editPane.setEditable(false);
            button=new   JButton( "确定 ");
            button.addActionListener(this);
            thread=new   Thread(this);
            p=new   JPanel();
            p.add(new   JLabel( "输入网址: "));
            p.add(text);  
            p.add(button);
            con=getContentPane();
            con.add(new   JScrollPane(editPane),BorderLayout.CENTER);
            con.add(p,BorderLayout.NORTH);
            setBounds(60,60,460,380);
            setVisible(true);
            validate();
            setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
      }
      public   void   actionPerformed(ActionEvent   e)
      {  
            if(!(thread.isAlive()))  
                  thread=new   Thread(this);
            try{
                      thread.start();
                  }
            catch(Exception   ee)
                  {
                        text.setText( "我正在读取 "+url);


                  }
      }
    public   void   run()
      {
              try   {        
                                  int   m=-1;
                                  editPane.setText(null);
                                    url=new   URL(text.getText().trim());
                                  InputStream   in=url.openStream();
                                  File   file=new   File( "temp.html ");
                                  ByteArrayOutputStream     write=new     ByteArrayOutputStream   ();
                                  while((m=in.read(b))!=-1)  
                                    {
                                          write.write(b,0,m);
                                    }
                                  write.close();
                                  in.close();
                                  byte     content[]=write.toByteArray();
                                  String   str=new   String(content);
                                  Pattern     pattern;                                                        
                                  Matcher     match;                                                      
                              //     pattern=Pattern.compile( " <IMG.*> ",Pattern   .CASE_INSENSITIVE);
                                //   match=pattern.matcher(str);                      


                                  //str=match.replaceAll( " ");
                                  pattern=Pattern.compile( "新闻 ",Pattern   .CASE_INSENSITIVE);
                                  match=pattern.matcher(str);                      
                                  str=match.replaceAll( "**** ");
                                  byte   cc[]=str.getBytes();
                                  ByteArrayInputStream   inByte=new   ByteArrayInputStream(cc);
                                  FileOutputStream   out=new   FileOutputStream(file);
                                  byte   dd[]=new   byte[1024];
                                  while((m=inByte.read(dd,0,1024))!=-1)  
                                    {
                                          out.write(dd,0,m);
                                    }
                                  out.close();
                                  inByte.close();
                                  newURL=file.toURL();
                                  con.removeAll();
                                  editPane=new   JEditorPane();
                                  editPane.setEditable(false);
                                  editPane.addHyperlinkListener(new   HyperlinkListener()
                                                                                  {
                                                                                      public   void   hyperlinkUpdate(HyperlinkEvent   e)  


                                                                                        {  
                                                                                            if(e.getEventType()==
                                                                                                HyperlinkEvent.EventType.ACTIVATED)
                                                                                                {  
                                                                                                    try{
                                                                                                              URL   linkURL=e.getURL();
                                                                                                              editPane.setPage(linkURL);
                                                                                                          }          
                                                                                                    catch(IOException   e1)
                                                                                                          {


                                                                                                                editPane.setText( " "+e1);
                                                                                                          }
                                                                                                  }
                                                                                        }  
                                                                                  }
                                                                          );
                                  editPane.setPage(newURL);
                                  con.add(p,BorderLayout.NORTH);
                                  con.add(new   JScrollPane(editPane),BorderLayout.CENTER);
                                  con.validate();
                                  validate();
                        }
                    catch(MalformedURLException   e1)
                      {    
                                  text.setText( " "+e1);
                                  return;
                      }
                    catch(IOException   e1)
                      {    


                                  text.setText( " "+e1);
                                  return;
                      }    
      }
}
public   class   Win
{  
        public   static   void   main(String   args[])
        {  
              new   Win1();
        }
}


[解决办法]
恭喜~
[解决办法]
新年快乐~
[解决办法]
接分
[解决办法]
新年快乐~

[解决办法]
恭喜 接分 :)
[解决办法]
接分来迟 呵呵

猪年快乐
[解决办法]
我的猪年第一个接分贴。。。。。
恭喜楼主,我自己也庆祝一下!
[解决办法]
恭喜:)
[解决办法]
恭喜!新年快乐
[解决办法]
接分来迟 恭喜!
[解决办法]
是什么原理呢,简单说明一下把,
http://community.csdn.net/Expert/topic/5341/5341889.xml?temp=.3290979
这个帖已经没了??

[解决办法]
接分

[解决办法]
恭喜:)
接分~~~
[解决办法]
JF and UP
新的一年共同进步啊

[解决办法]
jf
[解决办法]
:)
[解决办法]
每看懂什么目的

[解决办法]
恭喜:)

[解决办法]
恭喜~

热点排行