⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 datagramserver.java

📁 Java手机程序开发-DatagramServer
💻 JAVA
字号:
import javax.microedition.io.*;
import javax.microedition.midlet.*;
import javax.microedition.lcdui.*;
import java.io.*;

public class DatagramServer extends MIDlet implements CommandListener, Runnable{

	Display display;
	TextBox input;
	String serverURL = "datagram://:5678";
	String message;
	Command exitCmd;
	Thread t;

	public DatagramServer(){
		display = Display.getDisplay(this);
		input = new TextBox("接收信息", "", 100, TextField.ANY);
		t = new Thread(this);
		exitCmd = new Command("退出", Command.EXIT, 1);
		input.addCommand(exitCmd);
		input.setCommandListener(this);
	}

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

	public void pauseApp(){
	}

	public void destroyApp(boolean conditional){
	}

	public void commandAction(Command c, Displayable d){
		if( c == exitCmd){
			destroyApp(true);
			notifyDestroyed();
		}
	}

	public void run(){
		while(true){
			try{
				sendAndReceive(serverURL);
			}catch(Exception ex){}
		}
	}

	void sendAndReceive(String url) throws IOException{
		DatagramConnection con = (DatagramConnection)Connector.open(url);
		Datagram datagramOut = con.newDatagram(100);
		Datagram datagramIn = con.newDatagram(100);

		try{
			/*System.out.println("test2");
			con.receive(datagramIn);
			byte[] in = datagramIn.getData();
			String message = new String(in);
			System.out.println(message);
			input.insert(message, input.getCaretPosition());*/
			System.out.println("test3");
			String receive = "received:"+message;
			System.out.println(receive);
			byte[] out = receive.getBytes();
			datagramOut.setData(out, 0, out.length);
			System.out.println("test4");
			con.send(datagramOut);
			System.out.println("test5");
			display.setCurrent(input);

		}
		finally{
			if(con != null)
				con.close();
		}
	}

}

⌨️ 快捷键说明

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