tcp文件上传
1.server
1 // 创建服务器端的Socket对象 2 ServerSocket ss = new ServerSocket(11111); 3 4 // 监听客户端连接 5 Socket s = ss.accept(); 6 7 // 封装通道内的流 8 BufferedReader br = new BufferedReader(new InputStreamReader( 9 s.getInputStream())); 10 // 封装文本文件 11 BufferedWriter bw = new BufferedWriter(new FileWriter("Copy.java")); 12 13 String line = null; 14 while ((line = br.readLine()) != null) { 15 bw.write(line); 16 bw.newLine(); 17 bw.flush(); 18 } 19 20 bw.close(); 21 s.close();
2.client
1 // 创建客户端Socket对象 2 Socket s = new Socket("192.168.12.92", 11111); 3 4 // 封装文本文件 5 BufferedReader br = new BufferedReader(new FileReader( 6 "InetAddressDemo.java")); 7 // 封装通道内流 8 BufferedWriter bw = new BufferedWriter(new OutputStreamWriter( 9 s.getOutputStream())); 10 11 String line = null; 12 while ((line = br.readLine()) != null) { 13 bw.write(line); 14 bw.newLine(); 15 bw.flush(); 16 } 17 18 // 释放资源 19 br.close(); 20 s.close();
总结
这个文件上传是基于TCP的,首先,TCP是一个建立连接的传输方式,
步骤:
在客户端上:1.创建TCP客户端的Socket对象 2.获取输出流,写数据 3 .释放资源
在服务端上:1.创建TCP服务器端的Socket对象 2.监听客户端连接 3.获取输入流,读取数据 4.释放资源
io流
// BufferedWriter缓冲流 // OutputStreamWriter转换流 // OutputStream 字节输出流 // 封装通道内的数据 BufferedWriter bw = new BufferedWriter(new OutputStreamWriter( s.getOutputStream()));
基础知识还是挺麻烦的,好好总结!