JAVA在服务器端和客户端传输图片和文件
7页1、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 .ServerSocket;import .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() th
2、rows / 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(
3、); ps.flush(); int bufferSize = 8192; byte buf = new bytebufferSize; while (true) int read = 0; if (fis != null) read = fis.read(buf); if (read = -1) break; ps.write(buf, 0, read); ps.flush(); / 注意关闭socket链接哦,不然客户端会等待server的数据过来, / 直到socket超时,导致数据不完整。 fis.close(); s.close(); System.out.println(文件传输完成); catch (Exception e) e.printStackTrace(); public static void main(String arg) new ServerTest().start(); 2.socket的Util辅助类package sterning;import .*;import java.io.*;public class ClientSocket private
《JAVA在服务器端和客户端传输图片和文件》由会员s9****2分享,可在线阅读,更多相关《JAVA在服务器端和客户端传输图片和文件》请在金锄头文库上搜索。
2023-04-11 15页
2023-06-17 5页
2023-02-11 21页
2022-09-02 2页
2023-07-31 8页
2023-07-08 8页
2022-10-04 3页
2023-06-30 14页
2022-07-18 15页
2024-02-12 65页