Imaginary Code

from kougaku-navi.net

Processingで自分のグローバルIPアドレスを取得する

たまに使う機会があるので、備忘録として残しておく。

以下は@yoggyさんにもらったコード。短すぎてワロス

void setup() {
    String ipaddr = loadStrings("http://checkip.amazonaws.com")[0];
    println(ipaddr);
}


以下はこのへんのページを参考に最初書いたコード。一応残しておく。

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.net.URL;

String getIP() {
  URL whatismyip;
  try {
    whatismyip = new URL("http://checkip.amazonaws.com");
    BufferedReader in = null;
    try {
      in = new BufferedReader(new InputStreamReader(
      whatismyip.openStream()));
      String ip = in.readLine();
      return ip;
    } 
    finally {
      if (in != null) {
        try {
          in.close();
        } 
        catch (IOException e) {
          e.printStackTrace();
        }
      }
    }
  } 
  catch (Exception e) {
  }
  return null;
}

void setup() {
  println( getIP() );
}