JAVA Socket:文件传输
客户端:读取文件(FileInputStream),发送文件(OutputStream)
服务器端:接收文件(InputStream),写文件(FileOutputStream)
客户端代码:
package socketCopyFile; import java.net.*; import java.io.*; public class SocketCopyFileC { public static void main(String[] args) { try { Socket s = new Socket("127.0.0.1", 8888); System.out.println("getPort:" + s.getPort() + " getLocalPort:" + s.getLocalPort()); OutputStream ops = s.getOutputStream(); FileInputStream fis = new FileInputStream("C:/ice.jpg"); byte[] b = new byte[1024]; @SuppressWarnings("unused") int nLength = -1; while ((nLength = fis.read(b)) > 0){ ops.write(b,0,nLength); } fis.close(); ops.close(); s.close(); } catch (UnknownHostException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); }finally{ System.out.println("客户端Over"); } } }
服务器端代码:
package socketCopyFile; import java.net.*; import java.io.*; public class SocketCopyFileS { public static void main(String[] args) { try { ServerSocket sSocket = new ServerSocket(8888); Socket s = sSocket.accept(); System.out.println("getPort:" + s.getPort() + " getLocalPort:" + s.getLocalPort()); InputStream ips = s.getInputStream(); FileOutputStream fos = new FileOutputStream("D:\\ice.jpg"); byte[] b = new byte[1024]; int nLen = -1; while(true){ nLen = ips.read(b); if (nLen == -1){ break; } fos.write(b, 0 , nLen); } fos.close(); ips.close(); s.close(); sSocket.close(); } catch (Exception e) { }finally{ System.out.println("服务器端,OVER"); } } }
JAVA Socket:文件传输的更多相关文章
- java socket通信-传输文件图片--传输图片
ClientTcpSend.java client发送类 package com.yjf.test; import java.io.DataOutputStream; import java.io ...
- 基于序列化技术(Protobuf)的socket文件传输
好像好久都没更博文了,没办法,最近各种倒霉事情,搞到最近真的没什么心情,希望之后能够转运吧. 言归正传,这次我要做的是基于序列化技术的socket文件传输来无聊练一下手. 一.socket文件传输 之 ...
- 解决java socket在传输汉字时出现截断导致乱码的问题
解决java socket在传输汉字时出现截断导致乱码的问题 当使用socket进行TCP数据传输时,传输的字符串会编码成字节数组,当采用utf8编码时,数字与字母长度为1个字节,而汉字一般为3个字节 ...
- Java基于Socket文件传输示例(转)
最近需要进行网络传输大文件,于是对基于socket的文件传输作了一个初步的了解.在一位网友提供的程序基础上,俺进行了一些加工,采用了缓冲输入/输出流来包装输出流,再采用数据输入/输出输出流进行包装,加 ...
- Java简单文件传输 socket简单文件传输示例
服务器端代码: import java.io.*; import java.net.*; /** * Created with IntelliJ IDEA. * User: HYY * Date: 1 ...
- Java基于Socket文件传输示例
http://www.blogjava.net/sterning/archive/2007/10/13/152508.html 最近需要进行网络传输大文件,于是对基于socket的文件传输作了一个初步 ...
- java实现文件传输
在windows下装了个linux虚拟机,两者之间传输文件挺麻烦的.写了个简单的文件传输程序,来方便自己数据传送. server 端: import java.io.BufferedReader;im ...
- Android连接热点的Socket文件传输
最近把测试丢过来的种种BUG解决后,终于有时间去研究研究Socket通信,再加上以前做的WiFi连接和热点开启,于是有了现在的这篇博文:创建热点发送文件,让另一台手机连接热点接收文件. 效果图: 两台 ...
- Socket 文件传输
服务端 1.控件:TServerSocket 2.OnClientRead事件处理 procedure TMainForm.ssClientRead(Sender: TObject; Socket: ...
- Linux网络编程:socket文件传输范例
基于TCP流协议的socket网络文件传输Demo: 实现:C语言功能:文件传输(可以传任何格式的文件) /********************************************** ...
随机推荐
- Linux命令之WC
$ wc story.txt39 237 1901 story.txt● Use -l for only line count● Use -w for only word count● Use -c ...
- Android和WCF通信 - 大数据压缩后传输
Android和WCF通信 - 大数据压缩后传输 本帖来源:http://www.cnblogs.com/lykbk/archive/2013/08/15/3259045.html 最近一直在优化项目 ...
- 腾讯首度公开S级手游品质管理方法
weimjsam 引言 在最新的手游市场占有率统计中,腾讯游戏稳稳占据一半江山,目前仍以每月一到两款的速度推出新品,在如此复杂多变.响应要求极高的市场环境下,能持续推出高质量产品并保持高效迭代更新 ...
- Android: 触屏fling/scroll/drag的区别及其详细过程
Google了一下,终于搞清了touch screen下的几种操作模式(对应的是事件). 对于一个view, 常用的操作有点击(click)和长按(long press)二种.实际上,这些操作类型是A ...
- Topology的构建
public class BlackListBolt extends BaseRichBolt{ private static Logger logger = Logger.getLogger(Bla ...
- hdu 5288 OO’s Sequence 枚举+二分
Problem Description OO has got a array A of size n ,defined a function f(l,r) represent the number o ...
- do break的妙用
#include <stdio.h> #include <malloc.h> int func(int n) { //资源的统一申请 ; ; int* p = (int*)ma ...
- 转-WebView loadData与loadDataWithBaseURL用法、区别
近期用到WebView加载一些动态的内容的时候遇到一些问题,例如:在加载动态网页时,页面有很多样式表包含一些特殊字符,导致WebView无法识别产生加载异常,程序直接崩溃:另外一个就是加载的网页中有图 ...
- Input gameobject vector3 c#
Input类中的常用方法 bool w=Input.GetKey(KeyCode.W);//检测是否按下键盘W Input.GetKeyDown(KeyCode.W);//表示检测按下时 Input. ...
- 解析wamp的php.ini设置不生效的原因
你是否有过这样的经历,当你打开wamp的php.ini,并进行参数修改之后.再回到命令去运行你的php脚本,却发现你的设置居然不生效? 如果有这样的情况,那你得先了解php的两种运行运行环境,一个在命 ...