[Java] 使用java模擬ping和telnet的實現

今天在寫 Java 的時候,遇到問題跑去問 TonyQ 兄,他丟了一個網址給我,剛剛測試過了,還漫好用的,紀錄一下 模擬 ping 的實現
import java.io.*;
import java.net.*;

public class PseudoPing {
  public static void main(String args[]) {
        try {

            InetAddress address = InetAddress.getByName(args[0]);
            System.out.println(address.isReachable(5000));
        } catch (UnknownHostException e) {
            e.printStackTrace();
        } catch (IOException e) {
            e.printStackTrace();
        }
  }
}
Continue reading “[Java] 使用java模擬ping和telnet的實現”

[Ubuntu & java] java JDBC and MySQL

最近開始要摸 java 了,目前大概先實做 java with JDBC 連接 MySQL,所以在 JavaWorld@TW 這裡找了一些相關的文件,目前我在 Linux 底下實做,還沒找到一套很適合的 IDE Tool 來撰寫程式碼,大家好像都很推 netbeanseclipse,不過我目前還是使用 PSPad 來撰寫 java 程式碼,然後透過 FTP 的方式編輯,這不是重點,重點是要透過 jdbc 來連接 MySQL,目前是在 Ubuntu 7.04 這一版本上面實做,底下是實做方法: 1. 首先先安裝 deb 檔案:透過 apt-get 的方式
#
# 首先尋找 java lib with mysql
apt-get install libmysql-java
2. 安裝好之後尋找 jar 檔案,加入到 class path 裡面
#
# 首先 echo $CLASSPAT
#
# java mysql jar 檔案如下
/usr/share/java/mysql.jar
# 加入 CLASSPATH,修改 /etc/bash.bashrc
export CLASSPATH=$CLASSPATH:/usr/share/java/mysql.jar
# 然後在
source /etc/bash.bashrc
Continue reading “[Ubuntu & java] java JDBC and MySQL”

[Java] 正規取代表示法

最近弄國科會計畫,所以都在碰 java 的東西,都在弄 sparqlrdf 的東西,昨天弄懂一些基本的 sparql,然而利用 sarql 語法取出來的數值不是我想要的,所以利用正規表示,把字串取代了。 我想取代的字串如下:
( ?url = “LAB221″^^xsd:string )
我只想要中間的 LAB221 的部份,然後我上網找了方法,總共可以使用兩種方法 第一種
String result = "( ?url = \"LAB221\"^^xsd:string )";
// compile pattern
Pattern p = Pattern.compile("[^\"]+\"([^\"]+)\"[^\"]+");

// get matcher
Matcher m = p.matcher(result.replaceAll("[
  • ]","")); // test if match if (m.matches()) { System.out.println(m.group(1)); } else { System.out.println("error"); } /* 正規比對 */
    上面感謝 ptt qrtt1 給我的一點啟示 Continue reading “[Java] 正規取代表示法”

    [Java] 判斷字串是否是整數

    有時候必須知道輸入的字串是否是整數,如果不是的話,就要重新輸入,這有兩種作法 第一種是使用 try … catch … finally 的方法,如下
    public class test
    { 
    	public static void main(String args[])
      {
        BufferedReader buf = new BufferedReader(new InputStreamReader(System.in)); 
        try{
          System.out.print("請輸入你要的數字:");
          int test = Integer.parseInt(buf.readLine()); 
        }
        catch(ArrayIndexOutOfBoundsException e)
        {
          System.out.println(e.toString() + "陣列程式發生錯誤");  
        }
        catch(ArithmeticException e)
        {
          System.out.println(e.toString() + "數學發生錯誤");  
        }
        catch(Exception e)
        {
          System.out.println(e.toString() + "程式發生錯誤");
        }
        finally
        {
          System.out.println("執行成功");  
        }
    	
      }
    }
    
    另外一種方法,是利用 while 然後利用 Character.isDigit 的方法 public class test2 { public static void main(String args[]) { BufferedReader buf = new BufferedReader(new InputStreamReader(System.in)); String price; boolean num = false; try{ while(!num) { System.out.print("請輸入你要的數字:"); price = buf.readLine(); char[] price_array = price.toCharArray(); for(int index=0; index < price.length(); index++) { if(!Character.isDigit(price_array[index])) { System.out.println("您不是輸入數字"); break; } else { System.out.println("您輸入正確的數字了"); num =true; } } } } catch(Exception e) { System.out.println(e.toString() + "程式發生錯誤"); } } } [/code] PTT 的 java 版的 TonyQ 提供另一種寫法 Continue reading "[Java] 判斷字串是否是整數"

    [java] 在 linux 底下使用 java 來執行 Linux 指令

    其實可以在 linux 底下去寫 shell script 然後去執行 java 程式,而並非用 java 去執行 Linux 指令,不過java也是可以做到執行 shell command,底下就是我寫的 java 測試 code,去列出自己所在的目錄底下的檔案 ls 這個指令
    import java.io.*;
    import java.net.*;
    import java.util.*;
    
    public class runstart{
            public static void main(String a[]) throws Exception{
                    Process pl = Runtime.getRuntime().exec("/bin/ls");
                    String line = "";
                    BufferedReader p_in = new BufferedReader(new InputStreamReader(pl.getInputStream()));
                    while((line = p_in.readLine()) != null){
                            System.out.println(line);
                    }
                    p_in.close();
            }
    }
    
    參考 http://debut.cis.nctu.edu.tw/~ching/Course/JavaCourse/05_input_output/02_input_output.htm

    [Java] 安裝好 Jdk 設定 path 跟 classpath 路徑

    今天剛裝好 jdk 新版 jdk1.6.0_04,如要下載請到 這裡 下載,裝好之後當然底下要找編譯檔案,就是要去 bin 這個資料夾,然後找到 javac 跟 java 執行檔就可以了,不過如果你要在任何地方都要使用這個執行檔,就要去修改 path,設定方法如下 java_1 我的電腦右鍵->內容 k Continue reading “[Java] 安裝好 Jdk 設定 path 跟 classpath 路徑”