A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© fmi110 高级黑马   /  2015-8-12 19:12  /  354 人查看  /  2 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

sa
  1. /*
  2. 上传文本,通过TCP协议
  3. */
  4. import java.io.*;
  5. import java.net.*;
  6. class  Client3
  7. {
  8.         public static void main(String[] args) throws Exception
  9.         {
  10.                 Socket s = new Socket("192.168.31.1",10005);

  11.                 File file = new File("TcpDemo.java");
  12.                 if(!file.exists())
  13.                         throw new RuntimeException();
  14.                 String fileName = file.getName();//获取文件名传给主机

  15.                 BufferedReader bufr = new BufferedReader(new FileReader(file));
  16.                
  17.                 PrintWriter out = new PrintWriter(s.getOutputStream(),true);
  18.                 System.out.println("发送文件名...");

  19.        
  20.                 out.println(fileName);//串文件名

  21.                 //穿文档
  22.                 String line = null;

  23.                 while((line=bufr.readLine())!=null)
  24.                 {
  25.                         System.out.println("开始传输...");
  26.                         out.println(line);
  27.                 }
  28.                 System.out.println("发送完毕!!");
  29.                 //发送完毕
  30.                 s.shutdownOutput();

  31.                 //接收主机的回传信息
  32.                 BufferedReader buf = new BufferedReader(new InputStreamReader(s.getInputStream()));
  33.                
  34.                 System.out.println(buf.readLine());
  35.                
  36.                 //关闭资源呢
  37.                 buf.close();
  38.                 bufr.close();
  39.                 out.close();
  40.                 s.close();
  41.         }
  42. }

  43. class Server3
  44. {
  45.         public static void main(String[] as) throws Exception
  46.         {
  47.                 ServerSocket ss = new ServerSocket(10005);
  48.                 Socket s = ss.accept();

  49.                 //接收文件名
  50.                 BufferedReader bufr = new BufferedReader(new InputStreamReader(s.getInputStream()));
  51.                
  52.                
  53.                 String fileName = bufr.readLine();
  54.                 System.out.println("接收到文件名!!");
  55. //                File file = new File(fileName+".cpy");

  56.                 //复制内容
  57.                 BufferedWriter bufw = new BufferedWriter(new FileWriter("copy_"+fileName));
  58.                
  59.                 String line = null;

  60.                 System.out.println("接收内容...");
  61.                 while((line=bufr.readLine())!=null)
  62.                 {
  63.                         bufw.write(line);
  64.                         bufw.newLine();
  65.                         bufw.flush();
  66.                 }
  67.                 //返回成功消息
  68.                 PrintWriter out = new PrintWriter(s.getOutputStream(),true);
  69.                 System.out.println("接收完毕...");
  70.                 out.println("上传成功");

  71.                 out.close();
  72.                
  73.                 s.close();
  74.                 ss.close();
  75.         }
  76.        
  77. }
复制代码


2 个回复

倒序浏览
???这是要说明什么?
回复 使用道具 举报
pengbeilin 发表于 2015-8-12 20:22
???这是要说明什么?

nothing  水贴 赚币
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马