十七、在J2ME網路程式設計中使用CMWAP代理
在中國移動提供的網路連線中,分為CMNET和CMWAP兩種,其中CMNET可以無限制的存取互聯網絡,資費比較貴。 CMWAP類似一個HTTP的程式碼,只能存取支援HTTP的應用,但資費便宜,穩定性比較差。
在實際的J2ME網絡編程中,一般需要提供以CMWAP代理的方式連接網絡,在J2ME中,連接的代碼和直接連接有所不同,代碼如下:
HttpConnection http = (HttpConnection)Connector. "http://10.0.0.172/"+url);
http.setRequestPRoperty("X-Online-Host",ServerName);
例如你需要訪問的地址是:http://www.test.com/ login/loginServlet
則上面的程式碼就為:
HttpConnection http = (HttpConnection)Connector.open(("http://10.0.0.172/"+ 問題㟀in"http -Online-Host",”www.test.com”);
在實際使用過程中,只需要使用實際需要訪問的地址的域名或者ip來代替ServerName,例如示例中的“www.test.com” ,使用後續的位址類別來取代程式碼中的url,例如範例中的“login/loginServlet”,就可以實際的使用CMWAP代理來進行連接了。在程式開發中相當常見,以下對於時間處理做一個簡單的說明。點和現在相差的毫秒數來代表
這種方式適合比較兩個時間之間的差值。三個類別:
1、System類
long time = System. currentTimeMillis();
〕〜〜〜〜〜〜〜〜〜〜〜〜 〜)都可以得到當前時間的第一種表達方式。
Date date = new Date();
獲得當前時間,使用物件的形式來進行表達。
3、Calendargoo
3、Calendaran》 ar ar〜 ar〦〜);時間處理的具體操作
1 、以上三種表達方式的轉換:
a)將System類別所獲得的時間轉換為Date物件
Date date = new Date(System. currentTimeMillis());
物件
Calendar calendar = Calendar. getInstance();
Date date = newate();
calendar.setTime(date);最常用也是功能最強大的類,可以用它來獲得某個時間的日期、星期幾等資訊。
取得日期:
Calendar calendar = Calendar. getInstance();
……
int》day = calendar.get(Calendar.這個類似。
需要注重的是:Calendar中表示月份的數字和實際相差1,即1月用數字0表示,2月用數字1表示,…12月用數字11表示。
十九、J2ME中隨機數字處理全攻略
在程式中生成隨機數字,用處比較,如人工智慧領域等等,這裡對於在J2ME中生成隨機數的操作進行一個簡單的整理,希望對一個簡單的整理,希望對大家能有幫助。
J2ME和J2SE不同,不能使用Math類的random來產生隨機數字,只能使用java.util包的Random類來產生隨機數字。
1、建立Random類型的物件:
Random random = new Random();
㜀〦om = new10(1001㟎 om物件的方式,第一種使用預設建構方法,和以下的程式碼作用完全等價:
Random random = new Random(System. currentTimeMillis());
相當與使用當前時間作為種子數字來進行創建。
第二種方式透過自己來指定種子數字來進行創建。
大家可以根據需要使用以上兩種方式的任一種。
2、生成隨機數字:
創建好了隨機物件以後,我們就可以來產生隨機數字了:
Int很多〜);整數:
long l = random.nextLong();
3、產生指定範圍的數字:
例如產生0-10之間的隨機數字:
int k = random.nextInt(); 10);
先產生一個隨機整數k,然後用k和10取餘,最後使用Math類別的abs方法取絕對值,得到0-10之間的隨機數字。
獲得0-15之間的隨機數,類似:
int k = random.nextInt();
int j = Math.abs(k % 15);
int j = Math.abs(k % 15);
int j = Math.abs(k % 15);
int j = Math.abs(k % 15);
int〜-0 int k = random.nextInt();
int j = Math.abs(k % 10) + 10;
二十、在J2ME手機編程中使用字體
〜 二十、在J2ME手機編程中使用 二字 —Font在低階使用者介面中,獲得更好的表現效果,那麼如何使用Font類別呢?
首先,由於手機設備的限制,手機中支援的字體類型很有限,所以在J2ME中只能使用手機支援的預設字體來建構Font類物件。以下是建立Font類別的物件時所使用的方法:
getFont(int face,int style,int size);
例如:
Font font = ZE.
無論哪一個參數,都只能使用系統設定的數值,這些數值具體的大小在不同的手機上可能不同。以下對於其中的三個參數的取值做具體的介紹:
face參數指字體的外觀,其的取值:
FACE_MONOSPACE——等寬字體
》FACE_PROPORTYFACE_MONOSPACE-等寬字體
接style參數指字體的樣式,其的取值:
STYLE_BOLD——粗體
STYLE_ITALIC——斜體
STYLE_PLAIN——普通下劃線STYLE_DLE_DLTYLE_PLAIN——普通下劃線_TYLE_TYLE_STYLE_PLAIN STYLE_UNDERLINED STYLE_BOLD——帶下劃線粗體
STYLE_UNDERLINED STYLE_ITALIC-帶下劃線斜體
STYLE_UNDERLINED STYLE_ITALIC STYLE_BOLD-帶下劃線的粗斜體
SM〜〜. ZE_MEDIUM——中
SIZE_LARGE——大
通過上面的參數的值,可以組合出你需要的字體物件。
以下是一些常用的字體操作:
1. 取得系統的預設字型:
Font font = Font.getDefaultFont();
》 Font font = Font.getDefaultFont();
的方法是:
Font font = g.getFont();
3. 在panit方法內部,假設Graphics參數的名稱為g,則設定當前字體的方法是:
g.setFont(font); font為你建構好的字體物件。
4. 在MIDP2.0中,List可以設定每行的字體格式,方法是:
list.setFont(0,font);
list(0,font);
list的字體。
二十一、在J2ME手機程式開發中使用顏色
在J2ME手機開發過程中,需要經常用到顏色來進行繪製,增強程序的表現效果,下面就介紹一下如何使用顏色。
由於J2ME技術比較簡單,所以沒有實作專門的顏色類,而只是使用RGB的概念來代表顏色。這裡簡單介紹一下RGB的概念,顏色是由紅(Red)、綠(Green)、藍(Blue)三原色組成的,所以可以使用這三種顏色的組合來代表一種具體的顏色,其中R、G 、B的每個數值都位於0-255之間。在表達顏色的時候,即可以使用三個數字來表達,也可以使用一個格式如0X00RRGGBB這樣格式的十六進制來表達,下面是常見顏色的表達形式:
紅色:(255,0,0 )或0x00FF0000
綠色:(0,255,0)或0x0000FF00
藍色:(255,255,255)或0x00FFFFFF
其他顏色也可以通過上面的方式組合出來。
知道了顏色的表達方式以後,下面來介紹一下如何在J2ME程序中使用顏色,涉及的方法均在Graphics類中,有以下幾個:
1.getColor():
,傳回值是0x00RRGGBB格式的數字。例如:
int color = g.getColor();
其中g為Graphics類型的物件。
2.setColor(int RGB):
設定使用的顏色。例如:
g.setColor(0x00ff0000);
3.setColor(int red, int green, int blue)
在設定了Graphics使用的顏色以後,再進行繪製的時候,就可以繪製出指定的顏色了。
二十二、在J2ME聯網應用中取得客戶端的手機號碼
在J2ME程式開發過程中,為了一定的需要,經常需要來獲得用戶的手機號碼,但是這個功能卻在標準的J2ME類庫中沒有提供。
在使用中國移動的CMWAP方式連接網路時,中國移動會將用戶的手機號碼放在一個名稱為x-up-calling-line-id的頭資訊中,可以透過讀取該頭訊息,獲得用戶的手機號碼,具體代碼如下:
String usermphone = http.getHeader("x-up-calling-line-id");
其中http是HttpConnction類型的物件。
二十三、使用J2ME發送手機短訊息
在程式中,發送短訊息的方式一般有三種:
㟎 〜1、發送訊息以上就是J2ME程式開發全方位基礎講解總覽(二)的內容,更多相關內容請關注PHP中文網(www.php.cn)!