日期:2014-05-20 浏览次数:20822 次
import java.applet.Applet; import java.awt.Frame; import java.awt.TextArea; import java.awt.event.WindowAdapter; import java.awt.event.WindowEvent; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStream; import java.io.InputStreamReader; import java.net.MalformedURLException; import java.net.URL; public class test extends Applet { URL url; TextArea showarea = new TextArea("下载的数据"); public void init() { String strurl = "http://www.163.com"; try { url=new URL(strurl); } catch (MalformedURLException e) { e.printStackTrace(); } add(showarea); } public void start() { InputStream filecon =null; BufferedReader filedata =null; String line; try { filecon = url.openStream(); filedata = new BufferedReader(new InputStreamReader(filecon)); while ((line = filedata.readLine())!=null) { showarea.append(line+"\n"); } } catch (IOException e) { // TODO 自动生成 catch 块 e.printStackTrace(); } } public static void main(String[] args) { Frame f = new Frame("URL Test"); Applet ap =new test(); ap.init(); f.add(ap); f.addWindowListener(new WindowAdapter(){ @Override public void windowClosing(WindowEvent arg0) { // TODO 自动生成方法存根 System.exit(0); } }); f.setSize(400,300); f.setVisible(true); ap.start(); } }
// 根据地址 url 打开 Http 连接 HttpURLConnection con = (HttpURLConnection)( new URL( url ) ).openConnection(); if (proxy.hASProxy()) { // 注重: 假如 proxySet 为 false 时,依然设置了 proxyHost 和 proxyPort,代理设置仍会起作用。 // 假如 proxyPort 设置有问题,代理设置不会起作用。 System.getProperties().put( "proxySet", "true" ); System.getProperties().put( "proxyHost", proxy.getProxyHost() ); System.getProperties().put( "proxyPort", String.valueOf( proxy.getProxyPort() ) ); // 假如需要代理服务器验证,在 Http 请求头中加入 Proxy-Authorization 头, // 格式为: "Basic " + ("代理服务器用户名:密码"的 BASE64 编码) if (proxy.needAuth()) { con.setRequestProperty( "Proxy-Authorization", "Basic " + Encoder.base64Encode( proxy.getProxyUser() + ":" + proxy.getProxyPass() ) ); } }