package communication.tcp;
import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.io.IOException;
import javax.microedition.io.Connector;
import javax.microedition.io.SocketConnection;
import javax.microedition.lcdui.Command;
import javax.microedition.lcdui.CommandListener;
import javax.microedition.lcdui.Display;
import javax.microedition.lcdui.Displayable;
import javax.microedition.lcdui.Form;
import javax.microedition.lcdui.TextField;
import javax.microedition.midlet.MIDlet;
import javax.microedition.midlet.MIDletStateChangeException;
/**
* TCP客户端通信实现五
* @author Administrator
*
*/
public class ClintMIDlet6 extends MIDlet implements CommandListener, Runnable{
private SocketConnection sc = null;
private DataInputStream dis = null;
private DataOutputStream dos = null;
private boolean ISRUN = true;//控制线程的开始
private TextField tfNickName = new TextField("输入昵称:","",10,TextField.ANY);
private TextField tfMsg = new TextField("输入通信信息:","",255,TextField.ANY);
private Command send = new Command("发送",Command.SCREEN,1);
private Form form = new Form("在线-ing");
private Display display;
protected void destroyApp(boolean arg0) throws MIDletStateChangeException {
}
protected void pauseApp() {
}
protected void startApp() throws MIDletStateChangeException {
display = Display.getDisplay(this);
display.setCurrent(form);
form.addCommand(send);
form.append(tfNickName);
form.append(tfMsg);
form.addCommand(send);
form.setCommandListener(this);
//连接到服务器
try {
sc = (SocketConnection)Connector.open("socket://127.0.0.1:9999");
// 接受客户端发送的信息
dis = sc.openDataInputStream();
dos = sc.openDataOutputStream();
new Thread(this).start();
} catch (IOException e) {
e.printStackTrace();
}
}
public void commandAction(Command c, Displayable d) {
if(c == send){
try {
dos.writeUTF(tfNickName.getString()+"说:"+tfMsg.getString());
//动态获取昵称作为标题
form.setTitle(tfNickName.getString()+"在线-ing");
//发送后文本框置于空
tfMsg.setString("");
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
public void run() {
while(ISRUN){
try {
String msg = dis.readUTF();
form.append(msg+"\n");
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
}
tcp.rar_chat_j2me tcp_midlet tcp server
版权申诉
195 浏览量
2022-09-24
03:45:22
上传
评论
收藏 9KB RAR 举报
我虽横行却不霸道
- 粉丝: 75
- 资源: 1万+
最新资源
- MATLAB大数据仿真案例-蚁群算法(ACO)用于求解旅行商(TSP)问题.rar
- MySQL基础知识-个人笔记.rar
- Project8.ipynb
- Python实现BWO-LSTM白鲸算法优化长短期记忆神经网络时间序列预测(完整源码和数据)
- C语言实现文件读写操作的几种常用方法-C 语言.rar
- RK 3568 Android11 版本的梯形校正补丁
- 基于pyqt yolov5 dlib的驾驶员行为监控系统源码+模型.zip
- python代码案例详解-旅行商问题的多种求解算法.rar
- 单相电力电子负载仿真,PWM整流+单相并网逆变
- C语言功能模块(配置文件读取 、debug日志记录等).zip
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈