java socke传送图片_java在服务器端和客户端传输图片和文件.pdf

java在服务器端和客户端传输图片和文件

Java基于Socket文件传输示例

1.服务器端

package sterning;

import java.io.BufferedInputStream;

import java.io.DataInputStream;

import java.io.DataOutputStream;

import java.io.File;

import java.io.FileInputStream;

import java.net.ServerSocket;

import java.net.Socket;

public class ServerTest {

int port 8821;

void start() {

Socket s null;

try {

ServerSocket ss new ServerSocket(port);

while (true) {

// 选择进行传输的文件

String filePath "D:\\lib.rar";

File fi new File(filePath);

System.out.println("文件长度:" + (int)

fi.length());

// public Socket accept() throws

// IOException侦听并接受到此套接字的连

接。此方法在进行连接之前一直阻塞。

s ss.accept();

System.out.println("建立socket链接");

DataInputStream dis new

DataInputStream(new BufferedInputStream(s.getInputStream()));

dis.readByte();

DataInputStream fis new

DataInputStream(new BufferedInputStream(new

FileInputStream(filePath)));

DataOutputStream ps new

DataOutputStream(s.getOutputStream());

//将文件名及长度传给客户端。这里要真正

适用所有平台,例如中文名的处理,还需要加工,具体可以参见Think In Java

4th里有现成的代码。

ps.writeUTF(fi.getName());

ps.flush();

ps.writeLong((long) fi.length());

ps.flush();

int bufferSize 8192;

byte[] buf new byte[bufferSize];

while (true) {

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值