java Socket 文件传输
import java.io.DataOutputStream;import java.io.File;import java.io.FileInputStream;import java.io.IOException;import java.net.InetSocketAddress;import java.net.Socket;/*** 文件发送客户端主程序* @author admin_Hzw**/public class BxClient {/*** 程序main方法* @param args* @throws IOException*/public static void main(String[] args) throws IOException {int length = 0;double sumL = 0 ;byte[] sendBytes = null;Socket socket = null;DataOutputStream dos = null;FileInputStream fis = null;boolean bool = false;try {File file = new File("D:/天啊.zip"); //要传输的文件路径long l = file.length();socket = new Socket();socket.connect(new InetSocketAddress("127.0.0.1", 48123));dos = new DataOutputStream(socket.getOutputStream());fis = new FileInputStream(file);sendBytes = new byte[1024];while ((length = fis.read(sendBytes, 0, sendBytes.length)) > 0) {sumL += length;System.out.println("已传输:"+((sumL/l)*100)+"%");dos.write(sendBytes, 0, length);dos.flush();}//虽然数据类型不同,但JAVA会自动转换成相同数据类型后在做比较if(sumL==l){bool = true;}}catch (Exception e) {System.out.println("客户端文件传输异常");bool = false;e.printStackTrace();} finally{if (dos != null)dos.close();if (fis != null)fis.close();if (socket != null)socket.close();}System.out.println(bool?"成功":"失败");}}服务端:[java]import java.io.DataInputStream;import java.io.File;import java.io.FileOutputStream;import java.io.IOException;import java.net.ServerSocket;import java.net.Socket;import java.util.Random;import com.boxun.util.GetDate;/*** 接收文件服务* @author admin_Hzw**/public class BxServerSocket {/*** 工程main方法* @param args*/public static void main(String[] args) {try {final ServerSocket server = new ServerSocket(48123);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) {System.out.println("服务器异常");e.printStackTrace();}}}});th.run(); //启动线程运行} catch (Exception e) {e.printStackTrace();}}public void run补充:软件开发 , Java ,
上一个:java 解压缩文件
下一个:java 操作XML
- 更多JAVA疑问解答:
- java怎么在线读取ftp服务器上的文件内容
- 关于程序员的职业规划
- HTML和JSP矛盾吗?
- java小程序如何打包?
- java怎么split路径文件名?
- 关于Hibernate实体自身多对一的抓取问题
- 关于apache2+tomcat群集出现的问题
- SSH 导入导出excel 谁有这块的资料吗?
- springmvc 加载一个jsp页面执行多个方法 报404
- 关于用jquery 导入 excel
- java对时间进行循环放到List中
- 一个图片的输入输出程序,第一次调用某方法会中断,第二次调用则正常
- 请上过传智播客的人说一下传智播客怎么样呀!是不是像它说的那样好呀!
- spring的schema怎么配置
- 【菜鸟求助】SSH中怎么从JSP页面往后台传值呢