这个程序是前段时间写的德州扑克棋牌手程序,现在把以前写的东西整理出来。
下面是socket部分,还是很有帮助的:
private void start(String severIP, int serverPort) {
// TODO Auto-generated method stub
try {
s = new Socket();
s.setReuseAddress(true);
remoteAddr = new InetSocketAddress(severIP,
serverPort);
int playport = Integer.parseInt(playPort);
SocketAddress localAddr = new InetSocketAddress(playIp, playport);
s.bind(localAddr);
s.connect(remoteAddr);
while(!s.isConnected()){
try {
Thread.sleep(100);
s.connect(remoteAddr);
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
//register
registerMsg(playId, playName);
//receive Msg
while (true) {
while(!s.isConnected()){
try {
Thread.sleep(100);
s.connect(remoteAddr);
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
receiveMsg();
if (stopexe) {
break;
}
}
} catch (UnknownHostException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
详细代码:https://github.com/gocaption/caption/blob/master/game