网络编程之实现文件上传下载
2018-03-13 14:10
357 查看
1>实现文件下载的思路
其实跟发送消息是差不多的,只是这里接收的消息要存入文件,
客户端 :1>发送命令如 get 1.txt,2>以写的方式打开本地一个同名文件,收取文件内容并写入
服务端 :1>获取命令 ,2>寻找文件并以读的方式打开,把文件内容发送给接收方 2>代码实现
基于之前的粘包处理,改一下数据的读写就好了,从文件读,写入文件
服务端如下
![](https://img-blog.csdn.net/20180313105703394?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvaHVhbmdxbDUxNw==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70)
客户端如下
![](https://img-blog.csdn.net/20180313105739157?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvaHVhbmdxbDUxNw==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70)
生成了一个 名称一样,数据一样的文件,实现了文件下载功能
![](https://img-blog.csdn.net/20180313105817325?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvaHVhbmdxbDUxNw==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70)
3>加入之前的循环并函数化
服务端
![](https://img-blog.csdn.net/20180313114348372?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvaHVhbmdxbDUxNw==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70)
客户端,
![](https://img-blog.csdn.net/20180313114610531?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvaHVhbmdxbDUxNw==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70)
4>完善客户端上传功能
其实就是把客户端的文件内容发送给服务端,以想用名称的文件存储,大部分代码是一样的,客户端发送内容时,也要制定
数据头,服务端接收也要现收数据头大小,再收数据头,再收文件数据,再存储。
服务端
![](https://img-blog.csdn.net/20180313140506655?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvaHVhbmdxbDUxNw==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70)
客户端
其实跟发送消息是差不多的,只是这里接收的消息要存入文件,
客户端 :1>发送命令如 get 1.txt,2>以写的方式打开本地一个同名文件,收取文件内容并写入
服务端 :1>获取命令 ,2>寻找文件并以读的方式打开,把文件内容发送给接收方 2>代码实现
基于之前的粘包处理,改一下数据的读写就好了,从文件读,写入文件
服务端如下
客户端如下
生成了一个 名称一样,数据一样的文件,实现了文件下载功能
3>加入之前的循环并函数化
服务端
客户端,
4>完善客户端上传功能
其实就是把客户端的文件内容发送给服务端,以想用名称的文件存储,大部分代码是一样的,客户端发送内容时,也要制定
数据头,服务端接收也要现收数据头大小,再收数据头,再收文件数据,再存储。
服务端
客户端
相关文章推荐
- 网络编程之get,post请求,文件上传及下载
- Net网络通讯编程[利用Socket实现字串、文件、序列化对象传输]--前面6篇博文全部源代码下载地址
- Android网络编程之使用HttpClient批量上传文件(二)AsyncTask+HttpClient并实现上传进度监听
- 网络编程---Android开源组件(Async-http)实现文件上传
- iOS开发之网络编程--4、NSURLSessionDataTask实现文件下载(离线断点续传下载) <进度值显示优化>
- Android网络编程专栏--get和post请求,上传下载文件,提交Cookie
- Android网络编程之使用HttpClient批量上传文件(二)AsyncTask+HttpClient并实现上传进度监听
- iOS NSURLSession 实现网络请求-文件下载-上传-后台下载
- iOS开发之网络编程--使用NSURLConnection实现大文件断点续传下载+使用输出流代替文件句柄
- java网络编程六:DatagramSocket类简单实现文件下载
- java网络编程:DatagramSocket类简单实现文件下载
- Android网络编程之使用HttpClient批量上传文件(二)AsyncTask+HttpClient并实现上传进度监听
- iOS开发之网络编程--使用NSURLConnection实现大文件断点续传下载
- iOS开发之网络编程--3、NSURLSessionDataTask实现文件下载(离线断点续传下载)
- 利用ASIHttp实现文件的下载、上传和网络状态的监控
- Android实现断点续传下载文件,网络编程
- JCIFS简介and利用JCIFS网络文件共享实现上传下载
- iOS开发之网络编程--使用NSURLConnection实现大文件断点续传下载
- android网络编程之HttpUrlConnection的讲解--实现文件的断点上传
- iOS开发之网络编程--使用NSURLConnection实现文件上传