2012年6月11日 星期一

[Java] Pattern

class RETest{
  public void static main(String args[]){
            String testString3 = "0911-111111, 02-22222222, 0922-222222, 03-33333333";
            pattern = Pattern.compile(".*/name/(.*)\" class.*");

            matcher = pattern.matcher(testString3);

            while (matcher.find()) {
              System.out.println("matcher.group():\t"+matcher.group());
          }
  }
}

2012年6月10日 星期日

Java 抓出 IP Address

import java.net.*;

class test {

 public static void main(String[] args) {
    System.out.println((new test()).getAddress()); //在這顯示ip
 }
  public String getAddress() {
    InetAddress localIp;
    try{
      localIp=InetAddress.getLocalHost();
      String ip=localIp.getHostAddress();
      return ip;
    }catch(UnknownHostException une)
    {
    }
    return null;
  }
}

2012年1月11日 星期三

[BCB]關於移除容器內的元件的問題

比如,今天你在一個TPanel上add了許多TImage,
假設你現在要移除所有TPanel上的所有TImage,
可是使用for Loop去列出所有component,但是要注意,必須「由後往前」的去做移除,不然會發生問題
// 刪除(注意!! 要「由後往前」刪除)
for ( int i = ComponentCount-1; i>=0; --i ) {
TImage*pImg = dynamic_cast(Components[i]);   if ( pImg !=NULL )     RemoveComponent(pImg);     delete pImg;
    }
  }
ref:http://www.programmer-club.com.tw/ShowSameTitleN/cb/11065.html

2011年12月28日 星期三

BCB 畫空心矩形

img->Canvas->Pen->Width = 3;

img->Canvas->Pen->Color = clRed;

img->Canvas->Brush->Style = bsClear;

img->Canvas->MoveTo(0,0);

img->Canvas->LineTo(0,85);

img->Canvas->MoveTo(0,85);

img->Canvas->LineTo(105,85);

img->Canvas->MoveTo(105,85);

img->Canvas->LineTo(105, 0);

img->Canvas->MoveTo(105,0);

img->Canvas->LineTo(0, 0);

2010年2月7日 星期日

建立"JSP+Mysql+Apache Tomcat"環境攻略:

前置工作即是先將java環境建好,意即先安裝好"JDK"和"JRE",且設定好環境變數.

-----------------我是分隔線-----------------
step1:
像架Php網站的方法,先安裝懶人包wamp,即完成"Php+Mysql+Apache"的安裝.

step2:
到這裡"http://tomcat.apache.org/",下載Apache Tomcat.
我是下載"32-bit/64-bit Windows Service Installer (pgp, md5)"來安裝.

step3:
安裝完成之後,
"控制台"->"系統"->"進階"->"環境變數"->在"系統變數"欄按"新增",進入"編輯系統變數",
在"變數名稱"欄位輸入"JAVA_HOME",而"變數值"欄位輸入你jdk的安裝路徑,
(如: C:\Program Files\Java\jdk1.6.0_18)

step5:
到"http://dev.mysql.com/downloads/connector/j/",下載"mysql-connector-java-5.1.11",
解壓後將"mysql-connector-java-5.1.11-bin.jar"丟到tomcat的lib目錄裡頭.
(檔案名稱會隨著版本改變而不一樣)

step6:
將寫好的Jsp檔案(如:test.jsp)丟到Tomcat目錄下,即:"..Tomcat 6.0\webapps\ROOT".
重新啟動Apache Tomcat.

step7:
打開瀏覽器,輸入 "http://127.0.0.1:8080/test.jsp".
成功的話,機會顯示你的jsp網頁.

-----------------我是分隔線-----------------

若要測試jsp連接mysql,可以通過這一篇教學來測試:
http://ithelp.ithome.com.tw/question/10030858

2009年10月15日 星期四

[Note] Scanf and fget


char temp[100];
scanf("%s",temp);
printf("%s",temp);

在c裡頭,scanf遇到空格就會結束。
所以,如果輸入"abc efg",
結果就只會顯示"abc"

要用fget(temp,100,stdin)

2009年10月13日 星期二

[Skill] About Carriage Return & Line Feed

在计算机还没有出现之前,有一种叫做电传打字机(Teletype Model 33)的玩意,每秒钟可以打10个字符。但是它有一个问题,就是打完一行换行的时候,要用去0.2秒,正好可以打两个字符。要是在这0.2秒里面,又有新的字符传过来,那么这个字符将丢失。
于是,研制人员想了个办法解决这个问题,就是在每行后面加两个表示结束的字符。一个叫做“回车”,告诉打字机把打印头定位在左边界;另一个叫做“换行”,告诉打字机把纸向下移一行。
这就是“换行”和“回车”的来历,从它们的英语名字上也可以看出一二。
后来,计算机发明了,这两个概念也就被般到了计算机上。那时,存储器很贵,一些科学家认为在每行结尾加两个字符太浪费了,加一个就可以。于是,就出现了分歧。
Unix系统里,每行结尾只有“<换行>”,即“\n”;Windows系统里面,每行结尾是“<换行><回车>”,即“\n\r”;Mac系统里,每行结尾是“<回车>”。一个直接后果是,Unix/Mac系统下的文件在Windows里打开的话,所有文字会变成一行;而Windows里的文件在Unix/Mac下打开的话,在每行的结尾可能会多出一个^M符号。
c语言编程时(windows系统)
\r 就是return 回到 本行 行首 这就会把这一行以前的输出 覆盖掉
如:

int main() {
cout << "hahaha" << "\r" << "xixi" ;
}

最后只显示 xixi 而 hahaha 背覆盖了
\n 是回车+换行 把光标 先移到 行首 然后换到下一行 也就是 下一行的行首拉

int main() {

cout << "hahaha" << "\n" << "xixi" ;

}

则 显示

hahaha

xixi