Java 网络实例二(查看主机指定文件的最后修改时间、Socket实现多线程服务器程序、Socket连接到指定主机、网页抓取)
生活随笔
收集整理的這篇文章主要介紹了
Java 网络实例二(查看主机指定文件的最后修改时间、Socket实现多线程服务器程序、Socket连接到指定主机、网页抓取)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
查看主機指定文件的最后修改時間
import java.net.URL; import java.net.URLConnection; import java.util.Date; import java.text.SimpleDateFormat;public class Main {public static void main(String[] argv) throws Exception {URL u = new URL("http://127.0.0.1/test/test.html");URLConnection uc = u.openConnection();SimpleDateFormat ft = new SimpleDateFormat ("yyyy-MM-dd hh:mm:ss");uc.setUseCaches(false);long timestamp = uc.getLastModified();System.out.println("test.html 文件最后修改時間 :" + ft.format(new Date(timestamp)));} }以上代碼運行輸出結果為:
test.html 文件最后修改時間 :2018-09-06 10:06:04?
Socket 實現多線程服務器程序
import java.io.IOException; import java.io.PrintStream; import java.net.ServerSocket; import java.net.Socket;public class MultiThreadServer implements Runnable {Socket csocket;MultiThreadServer(Socket csocket) {this.csocket = csocket;}public static void main(String args[]) throws Exception {ServerSocket ssock = new ServerSocket(1234);System.out.println("Listening");while (true) {Socket sock = ssock.accept();System.out.println("Connected");new Thread(new MultiThreadServer(sock)).start();}}public void run() {try {PrintStream pstream = new PrintStream(csocket.getOutputStream());for (int i = 100; i >= 0; i--) {pstream.println(i + " bottles of beer on the wall");}pstream.close();csocket.close();}catch (IOException e) {System.out.println(e);}} }以上代碼運行輸出結果為:
Listening Connected?
使用 Socket 連接到指定主機
import java.net.InetAddress; import java.net.Socket;public class WebPing {public static void main(String[] args) {try {InetAddress addr;Socket sock = new Socket("www.sanguo.com", 80);addr = sock.getInetAddress();System.out.println("連接到 " + addr);sock.close();} catch (java.io.IOException e) {System.out.println("無法連接 " + args[0]);System.out.println(e);}} }以上代碼運行輸出結果為:
連接到 http:/www.runoob.com/222.73.134.120?
網頁抓取
以下實例演示了如何使用 net.URL 類的 URL() 構造函數來抓取網頁:
import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.FileWriter; import java.io.InputStreamReader; import java.net.URL;public class Main {public static void main(String[] args) throws Exception {URL url = new URL("http://www.sanguo.com");BufferedReader reader = new BufferedReader(new InputStreamReader(url.openStream()));BufferedWriter writer = new BufferedWriter(new FileWriter("data.html"));String line;while ((line = reader.readLine()) != null) {System.out.println(line);writer.write(line);writer.newLine();}reader.close();writer.close();} }以上代碼運行輸出結果為(網頁的源代碼,存儲在當前目錄下的 data.html 文件中):
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"/> <meta http-equiv="X-UA-Compatible" content="IE=11,IE=10,IE=9,IE=8"/>……?
總結
以上是生活随笔為你收集整理的Java 网络实例二(查看主机指定文件的最后修改时间、Socket实现多线程服务器程序、Socket连接到指定主机、网页抓取)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Java 数组常用操作一(排序、元素位置
- 下一篇: Redis Info 命令