zoukankan      html  css  js  c++  java
  • TCP通信(上传文件)

    package demo04;
    
    import java.io.FileInputStream;
    import java.io.IOException;
    import java.io.InputStream;
    import java.io.OutputStream;
    import java.net.Socket;
    
    public class TCPclient {
        public static void main(String[] args) throws IOException {
            //1.创建socket对象,连接服务器
            Socket s =new Socket("127.0.0.1", 8765);
            //2.通过套接字获取输出流
            OutputStream out =s.getOutputStream();
            //3.获取数据源
            FileInputStream fis =new FileInputStream("D:\test\aaa.png");
            //4.读数据
            int len =0;
            byte [] b =new byte [1024];
            while((len =fis.read(b))!=-1){
                //写入目的地
                out.write(b,0,len);
            }
            s.shutdownOutput();
            //接受服务器回复
            InputStream in =s.getInputStream();
            len =in.read(b);
            System.out.println(new String(b ,0,len));
            //释放资源
            fis.close();
            s.close();
        }
    }
    package demo04;
    
    import java.io.File;
    import java.io.FileNotFoundException;
    import java.io.FileOutputStream;
    import java.io.IOException;
    import java.io.InputStream;
    import java.io.OutputStream;
    import java.net.ServerSocket;
    import java.net.Socket;
    import java.util.Random;
    
    import org.xml.sax.InputSource;
    
    public class TCPserver{
        public static void main(String[] args) throws IOException {
            //1.创建服务器套接字绑定接口
            ServerSocket ser =new ServerSocket(8765);
            //2.接受套接字对象
            Socket s =ser.accept();
            //3.获取输入流
            InputStream in =s.getInputStream();
            //4.获取文件夹,如果不存在就创建
            File f =new File("f:\aaa");
            if(!f.exists()){
                f.mkdirs();
            }
            //5.创建文件输出流
            String filename ="oracle"+System.currentTimeMillis()+new Random().nextInt(99999)+".png";
            FileOutputStream fos =new FileOutputStream(f+File.separator+filename);
            //6.写入数据
            byte  [] b =new byte [1024];
            int len =0;
            while((len =in.read(b))!=-1){
                fos.write(b,0,len);
            }
            //服务器给客服端回复(上传成功)
            OutputStream out=s.getOutputStream();
            out.write("上传成功".getBytes());
            //释放资源
            fos.close();
            s.close();
            ser.close();
        }
        
    }
  • 相关阅读:
    [转]人生以快乐为本
    不用iTunes也能添加音乐到iPod
    设计很有意思的U盘
    PhotoFunia 在线生成趣味图片
    [转]关于项目管理的一点杂感
    MVC视频序列和Demo的下载地址
    视频测试序列的下载地址
    fatal error LNK1104: 无法打开文件“LIBC.lib”错误
    ORACLE数据库性能优化概述
    oracle常用hint
  • 原文地址:https://www.cnblogs.com/Jxliu/p/9253425.html
Copyright © 2011-2022 走看看