?? netclientmidlet.java
字號(hào):
/* * Copyright (c) 2000-2001 Sun Microsystems, Inc. All Rights Reserved. */package examples.netclient;import java.lang.*;import java.io.*;import java.util.*;import javax.microedition.lcdui.*;import javax.microedition.midlet.*;/** * A simple network client. * * This MIDlet shows a simple use of the HTTP * networking interface. It opens a HTTP POST * connection to a server, authenticates using * HTTP Basic Authentication and writes a string * to the connection. It then reads the * connection and displays the results. */public class NetClientMIDlet extends MIDlet implements CommandListener { private Display display; // handle to the display private Form mainScr; // main screen private Command cmdOK; // OK command private Command cmdExit; // EXIT command private Form dataScr; // for display of results /** * Constructor. * * Create main screen and commands. Main * screen shows simple instructions. */ public NetClientMIDlet() { display = Display.getDisplay(this); mainScr = new Form("NetClient"); mainScr.append("Hit OK to make network connection"); mainScr.append(" "); mainScr.append("Hit EXIT to quit"); cmdOK = new Command("OK", Command.OK, 1); cmdExit = new Command("Exit", Command.EXIT, 1); mainScr.addCommand(cmdOK); mainScr.addCommand(cmdExit); mainScr.setCommandListener(this); } /** * Called by the system to start our MIDlet. * Set main screen to be displayed. */ protected void startApp() { display.setCurrent(mainScr); } /** * Called by the system to pause our MIDlet. * No actions required by our MIDLet. */ protected void pauseApp() {} /** * Called by the system to end our MIDlet. * No actions required by our MIDLet. */ protected void destroyApp(boolean unconditional) {} /** * Gets data from server. * * Open a connection to the server, set a * user and password to use, send data, then * read the data from the server. */ private void genDataScr() { ConnectionManager h = new ConnectionManager(); // Set message to send, user, password h.setMsg("Esse quam videri"); h.setUser("book"); h.setPassword("bkpasswd"); byte[] data = h.Process(); // create data screen dataScr = new Form("Data Screen"); dataScr.addCommand(cmdOK); dataScr.addCommand(cmdExit); dataScr.setCommandListener(this); if (data == null || data.length == 0) { // tell user no data was returned dataScr.append("No Data Returned!"); } else { // loop trough data and extract strings // (delimited by '\n' characters StringBuffer sb = new StringBuffer(); for (int i = 0; i < data.length; i++) { if (data[i] == (byte)'\n') { dataScr.append(sb.toString()); sb.setLength(0); } else { sb.append((char)data[i]); } } } display.setCurrent(dataScr); } /** * This method implements a state machine that drives * the MIDlet from one state (screen) to the next. */ public void commandAction(Command c, Displayable d) { if (c == cmdOK) { if (d == mainScr) { genDataScr(); } else { display.setCurrent(mainScr); } } else if (c == cmdExit) { destroyApp(false); notifyDestroyed(); } }}
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號(hào)
Ctrl + =
減小字號(hào)
Ctrl + -