TCP接收和传输练习的优化
cilent
点击查看代码
package it_08;
import java.io.*;
import java.net.Socket;
//客户端
public class Demo3 {
public static void main(String[] args) throws IOException {
Socket socket = new Socket("127.0.0.1",9090);
BufferedReader br = new BufferedReader(new FileReader("server.txt"));
OutputStream outputStream = socket.getOutputStream();
BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(outputStream));
String len;
while((len=br.readLine())!=null){
bw.write(len);
bw.newLine();
bw.flush();
}
//定义结束标记
socket.shutdownOutput();
//接收反馈
InputStream inputStream = socket.getInputStream();
byte[] bys = new byte[1024];
int lent = inputStream.read(bys);
System.out.println(new String(bys,0,lent));
br.close();
socket.close();
}
}
点击查看代码
package it_08;
import java.io.*;
import java.net.ServerSocket;
import java.net.Socket;
public class Demo4 {
public static void main(String[] args) throws IOException {
ServerSocket ss = new ServerSocket(9090);
Socket socket = ss.accept();
InputStream inputStream = socket.getInputStream();
BufferedReader br = new BufferedReader(new InputStreamReader(inputStream));
BufferedWriter bw = new BufferedWriter(new FileWriter("server2.txt"));
String line;
while ((line=br.readLine())!=null){
bw.write(line);
bw.newLine();
bw.flush();
}
//给出反馈
OutputStream outputStream = socket.getOutputStream();
outputStream.write("数据接收完毕".getBytes());
ss.close();
socket.close();
bw.close();
}
}