import java.io.BufferedReader;import java.io.BufferedWriter;import java.io.IOException;import java.io.InputStreamReader;import java.io.OutputStreamWriter;import java.net.ServerSocket;import java.net.Socket;public class YaoChatServer extends Thread {private YaoChatServer() throws IOException {   CreateSocket();   //创建Socket服务器} public void run() {    Socket client;   String txt;   try {     while (true)    //线程无限循环,实时监听socket端口    {     client=ResponseSocket();            //响应客户端链接请求。。         while(true)     {      txt=ReceiveMsg(client);        System.out.println(txt);      //链接获得客户端发来消息,并将其显示在Server端的屏幕上         SendMsg(client,txt);      //向客户端返回消息      if(true)break;      //中断,继续等待链接请求     }         CloseSocket(client);     //关闭此次链接    }      }    catch (IOException e) {    System.out.println(e);   }}private ServerSocket server = null;private static final int PORT = 5000;private BufferedWriter writer;private BufferedReader reader;private void CreateSocket() throws IOException{   server = new ServerSocket(PORT, 100);   System.out.println("Server starting..");  }private Socket ResponseSocket() throws IOException{   Socket client = server.accept();    System.out.println("client connected..");     return client;}private void CloseSocket(Socket socket) throws IOException{   reader.close();   writer.close();   socket.close();   System.out.println("client closed..");}private void SendMsg(Socket socket,String Msg) throws IOException {   writer = new BufferedWriter(      new OutputStreamWriter(socket.getOutputStream()));    writer.write(Msg+"\n");    writer.flush();   }private String ReceiveMsg(Socket socket) throws IOException{   reader = new BufferedReader(     new InputStreamReader(socket.getInputStream()));         System.out.println("server get input from client socket..");    String txt="Sever send:"+reader.readLine();       return txt;}public static void main(final String args[]) throws IOException {   YaoChatServer yaochatserver = new YaoChatServer();   if (yaochatserver != null) {    yaochatserver.start();   }}}


package com.android.Yao;import java.io.BufferedReader;import java.io.BufferedWriter;import java.io.IOException;import java.net.UnknownHostException;import java.io.InputStreamReader;import java.io.OutputStreamWriter;import java.net.Socket;import android.app.Activity;import android.os.Bundle;import android.view.View;import android.widget.*;public class YaoChatRoomAndroid extends Activity {    /** Called when the activity is first created. */    @Override    public void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.main);               findviews();        setonclick();    }    private EditText chattxt;    private TextView chattxt2;    private Button chatok;        public void findviews()    {        chattxt = (EditText)this.findViewById(R.id.chattxt);        chattxt2 = (TextView)this.findViewById(R.id.chattxt2);        chatok   = (Button)this.findViewById(R.id.chatOk);    }        private void setonclick()    {        chatok.setOnClickListener(new View.OnClickListener() {       @Override    public void onClick(View v) {     try {      connecttoserver(chattxt.getText().toString());     } catch (UnknownHostException e) {      // TODO Auto-generated catch block      e.printStackTrace();     } catch (IOException e) {      // TODO Auto-generated catch block      e.printStackTrace();     }    }   });    }    public void connecttoserver(String socketData) throws UnknownHostException, IOException{    Socket socket=RequestSocket("192.168.10.119",5000);   SendMsg(socket,socketData);     String txt = ReceiveMsg(socket);   this.chattxt2.setText(txt);    }        private Socket RequestSocket(String host,int port) throws UnknownHostException, IOException    {       Socket socket = new Socket(host, port);    return socket;    }        private void SendMsg(Socket socket,String msg) throws IOException    {    BufferedWriter writer = new BufferedWriter(new OutputStreamWriter(socket.getOutputStream()));   writer.write(msg.replace("\n", " ")+"\n");   writer.flush();    }        private String ReceiveMsg(Socket socket) throws IOException    {    BufferedReader reader = new BufferedReader(new InputStreamReader(socket.getInputStream()));       String txt=reader.readLine();   return txt;    }    }

<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"    android:orientation="vertical"    android:layout_width="fill_parent"    android:layout_height="fill_parent"    ><TextViewandroid:id="@+id/chattxt2"android:layout_width="319px"android:layout_height="68px"android:text="TextView"android:layout_alignParentTop="true"android:layout_alignParentLeft="true"></TextView><EditTextandroid:id="@+id/chattxt"android:layout_width="319px"android:layout_height="52px"android:text="EditText"android:textSize="18sp"android:layout_below="@+id/widget30"android:layout_alignParentLeft="true"></EditText><Buttonandroid:id="@+id/chatOk"android:layout_width="320px"android:layout_height="41px"android:text="Button"android:layout_below="@+id/widget29"android:layout_alignParentLeft="true"></Button></LinearLayout>


更多相关文章

  1. Android模仿jquery异步请求
  2. android service
  3. Android客户端嵌入html5页面
  4. Android(安卓)Asynchronous Http Client
  5. 配置 Lync 2010 for iPhone
  6. Android拨打电话 安卓拨打电话权限
  7. 【Android网络编程】获取网络图片,具有缓存功能
  8. android客户端加密代码
  9. Android客户端GPS定位源码

随机推荐

  1. android 捕获home键
  2. android在程序中获取sdk版本
  3. Android编译系统——main.mk(Android(安
  4. Android(安卓) 学习总结杂项
  5. Android弹出窗口
  6. Android(安卓)文件上传
  7. 自动同意SDK components协议
  8. 【从头学android】从新的Activity中返回
  9. android中的dispatchTouchEvent、onInter
  10. android 拍照、相册选取,适配7.0