java socket 工具包_java.net 包 Socket通信 工具类

废话1000000字省略.........呵呵......

首先是服务器端:FileServer.java

package com.stars.windsystem.tool.utils;

import java.io.DataInputStream;

import java.io.DataOutputStream;

import java.io.File;

import java.io.FileInputStream;

import java.io.IOException;

import java.net.ServerSocket;

import java.net.Socket;

/**

* @描述: TODO 服务器端: 本例为通过Socket编程实现从 服务器端 发送文件到 客户端

* @类名称: FileServer

* @作者: 宋延军

* @邮箱: songyanjun_stars@126.com

* @日期: Feb 14, 2012 11:57:47 AM

*/

public class FileServer {

/**

* 描述: TODO 服务器端测试入口

* @标题: main

* @设定: @param a

* @返回类型: void

*/

public static void main(String[] a) {

FileServer fileServer = new FileServer();

fileServer.sendFile();

}

public void sendFile() {

byte[] buffer = new byte[1024];// 定义一byte类型的缓冲区。

try {

ServerSocket ssocket = new ServerSocket(2000);

System.out.println("服务器启动!");

Socket socket = ssocket.accept();

int length = 0;

File f = new File("d:\\aaa.txt");

FileInputStream fis = new FileInputStream(f);

DataInputStream dataIn = new DataInputStream(fis);

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

while ((length = dataIn.read(buffer)) != -1)

{

dataOut.write(buffer, 0, length);

}

dataOut.flush();

dataOut.close();

fis.close();

System.out.println("文件传送完毕!!!");

socket.close();

}

catch (IOException ex)

{

ex.printStackTrace();

}

}

}

其次是 客户端:FileClient.java

package com.stars.windsystem.tool.utils;

import java.io.DataInputStream;

import java.io.File;

import java.io.FileOutputStream;

import java.io.IOException;

import java.net.Socket;

/**

* @描述: TODO 客户端: 本例使用socket编程实现从服务器端接收程序到客户端

* @类名称: FileClient

* @作者: 宋延军

* @邮箱: songyanjun_stars@126.com

* @日期: Feb 14, 2012 12:01:57 PM

*/

public class FileClient {

/**

* 描述: TODO 客户端测试入口

* @标题: main

* @设定: @param args

* @返回类型: void

*/

public static void main(String[] args) {

FileClient fileClient = new FileClient();

fileClient.receiveFile();

}

public void receiveFile() {

byte[] buffer = new byte[1024];

int length = 0;

try {

Socket socket = new Socket("10.40.2.7", 2000);

DataInputStream dataIn = new DataInputStream(socket

.getInputStream());

File f = new File("d:\\fff.txt");

if (!f.exists())

f.createNewFile();

FileOutputStream fos = new FileOutputStream(f);

while ((length = dataIn.read(buffer)) != -1) {

fos.write(buffer, 0, length);

}

fos.close();

System.out.println("客户端文件接收完毕!!!");

socket.close();

} catch (IOException e) {

e.printStackTrace();

}

}

}

Over!!!

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值