int len=in.read(buf);
System.out.println(new String(buf,0,len));
//服务端向客户端返回信息
OutputStream out=s.getOutputStream();
out.write("wo shou dao le".getBytes());
s.close();
ss.close();
}
}
package src.com.hbsi.net;
import java.io.InputStream;
import java.io.OutputStream;
import java.net.ServerSocket;
import java.net.Socket;
public class TcpServer {
/**
* @param args
*/
public static void main(String[] args)throws Exception {
//1.建立服务器socket
ServerSocket ss=new ServerSocket(9009);
//2.调用accept()
Socket s=ss.accept();
String ip=s.getInetAddress().getHostAddress();
System.out.println(ip+"...connection");
InputStream in=s.getInputStream();
byte[] buf=new byte[1024];
int len=in.read(buf);
System.out.println(new String(buf,0,len));
//服务端向客户端返回信息
OutputStream out=s.getOutputStream();
out.write("wo shou dao le".getBytes());
s.close();
ss.close();
}
}
用CMD命令窗口打开:

实例2:可以从键盘录入的客户端和服务端
客户端:
[java]
package src.com.hbsi.net;
import java.net.Socket;
import java.io.*;
public class TcpClient2 {
/**
* @param args
*/
public static void main(String[] args) throws Exception{
Socket s=new Socket("192.168.49.59",9009);
//获取键盘录入
BufferedReader br=new BufferedReader(new InputStreamReader(System.in));
//数据输出给服务器端
OutputStream out=s.getOutputStream();
BufferedWriter bwout=new BufferedWriter(new OutputStreamWriter(out));
//获取服务器端返回的数据
BufferedReader brin=new BufferedReader(new InputStreamReader(s.getInputStream()));
String line=null;
while((line=br.readLine())!=null){
if(line.equals("over"))
break;
bwout.write(line);
bwout.newLine();
bwout.flush();
String str=brin.readLine();
System.out.println("server:"+str);
}
br.close();
s.close();
}
}
package src.com.hbsi.net;
import java.net.Socket;
import java.io.*;
public class TcpClient2 {
/**
* @param args
*/
public static void main(String[] args) throws Exception{
Socket s=new Socket("192.168.49.59",9009);
//获取键盘录入
BufferedReader br=new BufferedReader(new InputStreamReader(System.in));
//数据输出给服务器端
OutputStream out=s.getOutputStream();
BufferedWriter bwout=new BufferedWriter(new OutputStreamWriter(out));
//获取服务器端返回的数据
BufferedReader brin=new BufferedReader(new InputStreamReader(s.getInputStream()));
String line=null;
while((line=br.readLine())!=null){
if(line.equals("over"))
break;
bwout.write(line);
bwout.newLine();
bwout.flush();
String str=brin.readLine();
System.out.println("server:"+str);
}
br.close();
s.close();
}
}
服务端:
[java]
/*客户端通过键盘录入信息,发送到服务器端
服务器端收到信息后,将信息转为大写返回给客户端。*/
package src.com.hbsi.net;
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.OutputSt