java socket通信-传输文件图片--传输图片

java

java 通信 socket 传输 文件 图片 -文件传输-图片传输



ClientTcpSend.java   客户端发送类

package com.yjf.test;

import java.io.DataOutputStream;

import java.io.File;

import java.io.FileInputStream;

import java.net.InetSocketAddress;

import java.net.Socket;

public class ClientTcpSend {

    

    public static String clientip = "127.0.0.1";

    public static int port = 33456;

    public static void main(String[] args) {

        int length = 0;

        byte[] sendBytes = null;

        Socket socket = null;

        DataOutputStream dos = null;

        FileInputStream fis = null;

        try {

            try {

                socket = new Socket();

                socket.connect(new InetSocketAddress(clientip, port),30 * 1000);

                dos = new DataOutputStream(socket.getOutputStream());

                File file = new File("F:\\aa.xml");

                fis = new FileInputStream(file);

                sendBytes = new byte[1024*4];

                while ((length = fis.read(sendBytes, 0, sendBytes.length)) > 0) {

                    dos.write(sendBytes, 0, length);

                    dos.flush();

                }

            } finally {

                if (dos != null)

                    dos.close();

                if (fis != null)

                    fis.close();

                if (socket != null)

                    socket.close();

            }

        } catch (Exception e) {

            e.printStackTrace();

        }

    }

}


ServerTcpListener.java 服务器监听类

package com.yjf.test;

import java.net.*;

import java.io.*;

public class ServerTcpListener implements Runnable {

    public static void main(String[] args) {

        try {

            final ServerSocket server = new ServerSocket(ClientTcpSend.port);

            Thread th = new Thread(new Runnable() {

                public void run() {

                    while (true) {

                        try {

                            System.out.println("开始监听...");

                            Socket socket = server.accept();

                            System.out.println("有链接");

                            receiveFile(socket);

                        } catch (Exception e) {

                        }

                    }

                }

            });

            th.run(); //启动线程运行

        } catch (Exception e) {

            e.printStackTrace();

        }

    }

    public void run() {

    }

    public static void receiveFile(Socket socket) {

        byte[] inputByte = null;

        int length = 0;

        DataInputStream dis = null;

        FileOutputStream fos = null;

        try {

            try {

                dis = new DataInputStream(socket.getInputStream());

                fos = new FileOutputStream(new File("E:\\aa.xml"));

                inputByte = new byte[1024*4];

                System.out.println("开始接收数据...");

                while ((length = dis.read(inputByte, 0, inputByte.length)) > 0) {

                    fos.write(inputByte, 0, length);

                    fos.flush();

                }

                System.out.println("完成接收");

            } finally {

                if (fos != null)

                    fos.close();

                if (dis != null)

                    dis.close();

                if (socket != null)

                    socket.close();

            }

        } catch (Exception e) {

        }

    }

}

java socket通信-传输文件图片--传输图片java socket通信-传输文件图片--传输图片


以上是 java socket通信-传输文件图片--传输图片 的全部内容, 来源链接: utcz.com/z/394435.html

回到顶部