Server Side:
package com.vince.socket;
import java.io.BufferedWriter;
import java.io.IOException;
import java.io.OutputStreamWriter;
import java.net.ServerSocket;
import java.net.Socket;
/**
* TCP Server
* @author Harry Kuma
*
*/
public class ServerDemo {
public static void main(String[] args) {
try {
ServerSocket server = new ServerSocket(8888);
System.out.println("Server start, waiting for connection");
Socket s = server.accept();//Wait for Client connect, will block here
String info = "Please receive your goods\n";
BufferedWriter bw = new BufferedWriter(
new OutputStreamWriter(s.getOutputStream()));
bw.write(info);
bw.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
s.getOutputStream()的返回值类型
InputStream java.net.Socket.getInputStream() throws IOException
getInputStream
public InputStream getInputStream()
throws IOException
Returns an input stream for this socket.
Client Side:
package com.vince.socket;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.net.Socket;
import java.net.UnknownHostException;
/**
* TCP Client
* @author lamp
*
*/
public class ClientDemo {
public static void main(String[] args) {
try {
Socket s = new Socket("10.92.43.28",8888);
System.out.println("Connect Server Success!");
BufferedReader br = new BufferedReader(
new InputStreamReader(s.getInputStream()));
String info = br.readLine();
System.out.println(info);
br.close();
} catch (UnknownHostException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
}