网络编程TCP发送数据
import java.io.*;
import java.net.Socket;
public class ClientDome {
public static void main(String[] args) throws IOException {
//创建Socket对象,将其连接到主机指定的端口号上
Socket socket = new Socket(“192.168.24.60”,20000);
//获取输出流的对象
BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(socket.getOutputStream()));
//读本地文件
BufferedReader br = new BufferedReader(new FileReader("day14\\ClentDome.java"));
String lineDome;
while ((lineDome= br.readLine())!=null){
bw.write(lineDome);
bw.newLine();
bw.flush();
}
//告诉服务端已经发送完毕
socket.shutdownOutput();
//服务端相应客户端并给出反馈打印在控制台
BufferedReader brClient = new BufferedReader(new InputStreamReader(socket.getInputStream()));
String data = brClient.readLine();
System.out.println(data);
//释放资源
br.close();
socket.close();
}
}
网络编程TCP接收数据
import java.io.*;
import java.net.ServerSocket;
import java.net.Socket;
public class ServerDome {
public static void main(String[] args) throws IOException {
//创建ServerSocket对象并绑定到指定端口
ServerSocket socket = new ServerSocket(20000);
//监听要连接的客户端并接收
Socket accept = socket.accept();
//获取输入流的对象
BufferedReader br = new BufferedReader(new InputStreamReader(accept.getInputStream()));
//接收客户端的数据并写到文件
BufferedWriter bw = new BufferedWriter(new FileWriter("day14\\Copy.java"));
String line;
while ((line=br.readLine())!=null){
bw.write(line);
bw.newLine();
bw.flush();
}
//客户端发送完毕,服务端给出响应,再次返回给客户端
BufferedWriter bwServer = new BufferedWriter(new OutputStreamWriter(accept.getOutputStream()));
bwServer.write("收到");
bwServer.newLine();
bwServer.flush();
//释放资源
bw.close();
accept.close();
}
}