客户端:
package blog_Upload;
import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.net.Socket;
import java.net.UnknownHostException;
public class TCP_Client {
public static void main(String[] args) throws UnknownHostException, IOException {
//建立客户端套接字
Socket s = new Socket("10.210.161.206",7777);
//获取输出流对象
OutputStream os = s.getOutputStream();
//读取本地文件
BufferedReader br = new BufferedReader(new FileReader("D:\\新建文本文档.txt"));
String str = null;
System.out.println("客户端开始上传!");
//开始上传
while((str = br.readLine()) != null)
{
os.write(str.getBytes());
os.write("\r\n".getBytes());
}
s.shutdownOutput(); //上传结束标志
//获取输入流对象
InputStream in = s.getInputStream();
//客户端读入数据
byte[] b = new byte [1024];
int len = in.read(b);
System.out.println(new String(b,0,len));
System.out.println("客户端上传完毕");
os.close();
}
}
服务器端:
package blog_Upload;
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.FileWriter;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.OutputStream;
import java.net.ServerSocket;
import java.net.Socket;
public class TCP_Server {
public static void main(String[] args) throws IOException {
System.out.println("服务器端开启。。。");
//创建服务器套接字对象
ServerSocket ss = new ServerSocket(7777);
//获取客户端套接字对象
Socket s = ss.accept();
//获取输入流,并用bufferedreader装饰
BufferedReader br = new BufferedReader(new InputStreamReader( s.getInputStream()));
//在本地创建副本
BufferedWriter bw = new BufferedWriter(new FileWriter("D:\\新建文本文档_副本.txt"));
String buff= null;
//开始复制
while((buff = br.readLine()) != null)
{
bw.write(buff);
bw.newLine();
bw.flush();
}
System.out.println("数据接收完毕。。");
String str1 = "服务器端接收完毕";
OutputStream os = s.getOutputStream();
os.write(str1.getBytes());
s.close();
ss.close();
}
}
结果: