2007年11月22日 星期四

Firefox 3 Beta 1 釋出

非常傑出的瀏覽器Firefox,目前釋出Beta 1 版本有20國語系,還沒正體中文版。

http://www.mozilla.com/en-US/firefox/all-beta.html

image

2007年11月16日 星期五

讓你的Eee PC擁有1024 x 768 像素的解析度

今天試了一下,將Eee PC的螢幕解析度調到 1024x768,結果上下左右是以模擬的拖曳方式展現,還OK。

直接看圖比較快

001

002

003

004

005

006

007

008

009

設定OK

2007年11月15日 星期四

Google釋出手機開發套件「Android SDK」

朋友們想賺錢嗎?Google 12日宣布舉辦總獎金1,000萬美元的Android開發者競賽,邀請各界為新推出的Android開放手機平台開發新軟體。

Google釋出的手機開發軟體「Android SDK」,是使用Java Base語言。目前提供三種作業系統(Windows、Mac OS X (intel)、Linux(i386))的開發平台,期待大家可以創造出殺手級的應用,有興趣的朋友可以至以下網址下載SDK:http://code.google.com/android/

android-phone

sample_lunarlander

Android 架構




DEMO



2007年11月14日 星期三

中文大寫金額轉換函式

這個FUNCTION 是為了朋友寫的,其中大部分是參考某網友寫的程式(不好意思,忘了網址),有需要的朋友可以參考看看。

CREATE OR REPLACE FUNCTION get_ntd_amt(smallmoney VARCHAR2)
RETURN VARCHAR2 IS
   BigWrite       VARCHAR2(100); --用於返回大寫的金額
   Bignum         VARCHAR2(10); --用於存放每一個阿拉伯數字對應的漢字
   NTD            VARCHAR2(10); --用於存放台幣單位
   moneyplace     NUMBER; --用於確定台幣的精度,最多只能精確到分
   dotplace       NUMBER; --確定小數點的位置
   moneynum       NUMBER; --台幣的位數
   err_exception  EXCEPTION;
BEGIN
   /*用內置函數INSTR確定小數點的位置*/
   dotplace:= INSTR(smallmoney,'.');
   /*判斷是否超出本函數定義的精度範圍,
   如果是則引發自定義異常err_exception*/
   IF (LENGTH(smallmoney)>14)
      OR((LENGTH(smallmoney)>12)AND(dotplace=0)) THEN
      RAISE err_exception;
   END IF;
   /*確定台幣的精度,如果小數點位置為0則精度只精確到元否則按小數點的 位置來確定台幣的精度*/
   IF dotplace=0 THEN
      moneyplace:=0;
   ELSE
      moneyplace:=dotplace-LENGTH(smallmoney);
   END IF;
   /*確定台幣的精確,如果小數點位置為0則精度只精確到元否則按小數點的 位置來確定台幣的精度*/

   /*通過一個FOR循環將smallmoney中的阿拉伯數字逐一去出來,注意該FOR循 環是按照降序循環的*/
   BigWrite :='';
   FOR moneynum in REVERSE 1..LENGTH(smallmoney) LOOP
       /*如果位置在小數點的位置則不做任何動作*/
       IF moneynum<>dotplace THEN
          /*CASE循環將smallmoney裡對應的阿拉伯數字用中文來表示*/
          Bignum := CASE SUBSTR(smallmoney,moneynum,1)
                    WHEN '1' THEN '壹'
                    WHEN '2' THEN '貳'
                    WHEN '3' THEN '參'
                    WHEN '4' THEN '肆'
                    WHEN '5' THEN '伍'
                    WHEN '6' THEN '陸'
                    WHEN '7' THEN '柒'
                    WHEN '8' THEN '捌'
                    WHEN '9' THEN '玖'
                    WHEN '0' THEN '零'
                    END;     
          /*CASE循環來設置smallmoney裡對應的阿拉伯數字的相應的精度*/
          NTD := CASE moneyplace
                 WHEN -2 THEN '分'
                 WHEN -1 THEN '角'
                 WHEN 0  THEN '元'
                 WHEN 1  THEN '拾'
                 WHEN 2  THEN '佰'
                 WHEN 3  THEN '仟'
                 WHEN 4  THEN '萬'
                 WHEN 5  THEN '拾'
                 WHEN 6  THEN '佰'
                 WHEN 7  THEN '仟'
                 WHEN 8  THEN '億'
                 WHEN 9  THEN '拾'
                 WHEN 10 THEN '佰'
                 WHEN 11 THEN '仟'
                 END;
          moneyplace := moneyplace+1;
          --IF BigWrite IS NULL THEN
          --BigWrite := Bignum||NTD;
          --ELSE
          BigWrite := Bignum||NTD||BigWrite;
          --END IF;
       END IF;
   END LOOP;
   RETURN BigWrite;
EXCEPTION --異常處理部分
   WHEN err_exception THEN
        return ('該函數只能轉換長度不大於14位後整數位不大於12位的金額!');
   WHEN OTHERS THEN
        return ('不是有效的金額!');
END;