将看到的记录下来
一、如果只是一个客户端和一个服务器的简单两个交互信息:
1、服务器代码(这里只需要运行JAVA代码即可,只需PC机上运行,反正!!不是一个Android项目)
import java.net.*;
import java.io.*;
public class SimpleServer
{
public static void main(String[] args)
throws IOException
{
// 创建一个ServerSocket,用于监听客户端Socket的连接请求
ServerSocket ss = new ServerSocket(30000); //①
// 采用循环不断接受来自客户端的请求
while (true)
{
// 每当接受到客户端Socket的请求,服务器端也对应产生一个Socket
Socket s = ss.accept();
OutputStream os = s.getOutputStream();
os.write("您好!\n"
.getBytes("utf-8"));
// 关闭输出流,关闭Socket
os.close();
s.close();
}
}
}
2、客户端代码
package org.crazyit.net;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.net.Socket;
import android.app.Activity;
import android.os.Bundle;
import android.widget.EditText;
public class SimpleClient extends Activity
{
EditText show;
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
show = (EditText) findViewById(R.id.show);
new Thread()
{
@Override
public void run()
{
try
{
// 建立连接到远程服务器的Socket
Socket socket = new Socket("192.168.1.88" , 30000); //①
// 将Socket对应的输入流包装成BufferedReader
BufferedReader br = new BufferedReader(
new InputStreamReader(socket.getInputStream()));
// 进行普通IO操作
String line = br.readLine();
show.setText("来自服务器的数据:" + line);
// 关闭输入流、socket
br.close();
socket.close();