socketserver.java

来自「java手机程序开发随书光盘源代码」· Java 代码 · 共 66 行

JAVA
66
字号
import javax.microedition.io.*;
import javax.microedition.midlet.*;
import javax.microedition.lcdui.*;
import java.io.*;

public class SocketServer extends MIDlet implements CommandListener{

	Display display;
	TextBox input;
	String serverURL = "serversocket://:5678";
	String message;
	Command okCmd;
	Alert alert;

	public SocketServer(){
		display = Display.getDisplay(this);
		input = new TextBox("输入回应信息", "", 100, TextField.ANY);
		okCmd = new Command("确定", Command.OK, 1);
		alert = new Alert("有人连进来了!");
		alert.setTimeout(Alert.FOREVER);
		input.addCommand(okCmd);
		input.setCommandListener(this);
	}

	public void startApp(){
		display.setCurrent(input);
	}

	public void pauseApp(){
	}

	public void destroyApp(boolean conditional){
	}

	public void commandAction(Command c, Displayable d){
		if(c == okCmd){
			try{
				listen(serverURL);
			}catch(Exception ex){}
		}
	}

	void listen(String url) throws IOException{

		StreamConnection con = null;
		DataOutputStream os = null;
		StreamConnectionNotifier scn =
			(StreamConnectionNotifier)Connector.open(url);
		try{
			con = scn.acceptAndOpen();
			display.setCurrent(alert, input);
			os = con.openDataOutputStream();
			String response = input.getString();
			input.setString("");
			os.writeUTF(response);
			os.flush();
		}
		finally{
			if(os != null)
				os.close();
			if(con != null)
				con.close();
		}
	}

}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?