打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
java socket通信

java socket通信-传输文件图片

分类: java 8448人阅读 评论(8) 收藏 举报

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通信-传输文件图片--传输图片

来源:http://yijianfengvip.blog.163.com/blog/static/1752734322012113112733610/

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
Java发送ios推送消息(APN)的代码示例
java也可以做黑客?
UnitySocket服务器(客户端)通用框架
java使用socket文件上传
JAVA的I/O介绍
分享 commons io 工具类 代码
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服