スッキリわかるJava入門 実践編 第11章 ネットワーク通信
第11章 ネットワーク通信
Javaによるネットワーク通信について学びます。ネット上にあるデータを読み込んだりします。
URLを用いた高水準アクセス
java.net.URLクラスのような高水準APIを用いてWebページを取得します。
HTMLを取得する
import java.io.InputStream; import java.io.InputStreamReader; import java.net.URL; public class Main { public static void main(String[] args) { // HTMLを取得する try { URL url = new URL("http://dokojava.jp"); InputStream is = url.openStream(); InputStreamReader isr = new InputStreamReader(is); int i = isr.read(); while(i != -1) { System.out.print((char) i); i = isr.read(); } isr.close(); }catch(Exception e) { e.printStackTrace(); } } }
Socketを用いた低水準アクセス
サーバ名とポート番号を指定して、Socketインスタンスを生成し、HTMLを取得します。
HTMLを取得
import java.io.IOException; import java.io.InputStream; import java.io.InputStreamReader; import java.io.OutputStream; import java.net.Socket; import java.net.UnknownHostException; public class Main { public static void main(String[] args) { try { Socket sock = new Socket("dokojava.jp", 80); InputStream is = sock.getInputStream(); OutputStream os = sock.getOutputStream(); os.write("GET /index.html HTTP/1.0\r\n".getBytes()); os.write("\r\n".getBytes()); os.flush(); InputStreamReader isr = new InputStreamReader(is); int i = isr.read(); while(i != -1) { System.out.print((char) i); i = isr.read(); } sock.close(); } catch (UnknownHostException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } } }
スッキリわかる Java入門 実践編 第2版 (スッキリシリーズ)
- 作者: 中山清喬
- 出版社/メーカー: インプレス
- 発売日: 2014/09/22
- メディア: 単行本(ソフトカバー)
- この商品を含むブログ (7件) を見る