黑马程序员技术交流社区

标题: 【黑马程序员】客户端上传文件练习题 [打印本页]

作者: huburt    时间: 2016-5-27 09:20
标题: 【黑马程序员】客户端上传文件练习题
  1. public class Client {

  2.         public static void main(String[] args) throws IOException{
  3.                 Scanner sc = new Scanner(System.in);
  4.                 File file;
  5.                 //键盘接一个路径,判断是否是文件
  6.                 System.out.println("请输入要上传的文件路径:");
  7.                 while(true){
  8.                         file = new File(sc.nextLine());
  9.                         if(file.exists()){
  10.                                 if(file.isFile()){
  11.                                         break;
  12.                                 }else{
  13.                                         System.out.println("这是一个文件夹路径,请重新输入一个文件路径:");
  14.                                 }
  15.                         }else{
  16.                                 System.out.println("输入的文件不存在!请重新输入:");
  17.                         }
  18.                 }
  19.                
  20.                 //发起连接
  21.                 Socket socket = new Socket("127.0.0.1", 12345);
  22.                 //打开输入输出流
  23.                 BufferedReader br = new BufferedReader(new InputStreamReader(socket.getInputStream()));
  24.                 PrintStream ps = new PrintStream(socket.getOutputStream());
  25.                 //发送服务器
  26.                 ps.println(file.getName());
  27.                 //接收返回值
  28.                 String reponse = br.readLine();
  29.                 if(reponse.equals("1")){
  30.                         System.out.println("文件已存在于服务器!");
  31.                 }else{//文件不存在,则上传
  32.                         FileInputStream fis = new FileInputStream(file);
  33.                         byte[] b = new byte[1024*4];
  34.                         int len;
  35.                         while((len=fis.read(b))!=-1){
  36.                                 ps.write(b, 0, len);
  37.                         }
  38.                         fis.close();
  39.                 }
  40.                 //关闭连接
  41.                 socket.close();
  42.         }
  43. }
复制代码

作者: 贪睡的猫    时间: 2016-5-27 09:23
顶一个,加油咯




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2