java 网络编程 页面下载源代码(一)

2014-11-24 09:19:35 · 作者: · 浏览: 0

DownPage.java

[java]
public class DownPage {
public static void main(String[] args){
pageDown gui = new pageDown();
gui.setVisible(true);
}
}

pageDown.java

[java]
import java.awt.BorderLayout;
import java.awt.Container;
import java.awt.Desktop;
import java.awt.Dimension;
import java.awt.FlowLayout;
import java.awt.GridBagConstraints;
import java.awt.GridBagLayout;
import java.awt.Insets;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileFilter;
import java.io.FileWriter;
import java.io.IOException;
import java.io.InputStreamReader;
import java.net.HttpURLConnection;
import java.net.MalformedURLException;
import java.net.URL;
import java.net.UnknownHostException;

import javax.swing.JButton;
import javax.swing.JFileChooser;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.JTextField;
import javax.swing.border.EmptyBorder;

public class pageDown extends JFrame {
public pageDown() {
initComponents();
}

private void thisWindowClosing(WindowEvent e) {
System.exit(0);
}


private void dwnldMouseClicked(MouseEvent e) {
try {
URL url = new URL("http://"+ urlField.getText());

String lct = lcFile.getText();
if(fileName.getText().equals("")){
String str = urlField.getText().substring(0, urlField.getText().indexOf("."));
String name =null;
if(str.equals("www")){
String nameTmp = urlField.getText().substring(urlField.getText().indexOf(".") + 1, urlField.getText().length());
name = nameTmp.substring(0,nameTmp.indexOf("."));
}else{
name = str;
}
file = new File(lct + "\\" + name + ".html");
}else{
file = new File(lct + "\\" + fileName.getText() + ".html");
}
HttpURLConnection connection = (HttpURLConnection) url.openConnection();
BufferedReader down = new BufferedReader(new InputStreamReader(connection.getInputStream(),"utf-8"));
BufferedWriter save = new BufferedWriter(new FileWriter(file));
String line = null;
while((line = down.readLine()) != null){
save.write(line);
save.newLine();
save.flush();
}
connection.disconnect();
save.close();
JOptionPane.showMessageDialog(this, "下载完成");
} catch (MalformedURLException e1) {
// TODO Auto-generated catch block
} catch (IOException e1) {
JOptionPane.showMessageDialog(this, "下载失败,请检查网络连接并验证网页地址的有效性");
// TODO Auto-generated catch block

}catch (IllegalArgumentException e1){
JOptionPane.showMessageDialog(this, "请输入网页地址");
} catch(StringIndexOutOfBoundsException e1){
JOptionPan