简单的文件ftp上传
简单的文件ftp上传
- server - import socket
 import struct
 service=socket.socket() service.bind(('127.0.0.1',8081))
 while True:
 service.listen(5) conn,address=service.accept()
 print('有客户端连接进来了,地址如下',address)
 #获取头的内容
 dic_len_byte=conn.recv(4)
 print(dic_len_byte)
 dic_len=struct.unpack('i',dic_len_byte)[0]
 print(dic_len)
 dic_head=eval(conn.recv(dic_len))
 data=conn.recv(dic_head['size'])
 data_name=dic_head['name']
 # print(data.decode('utf8'))
 with open(data_name,'wb') as fw:
 fw.write(data)
 
- client - import socket
 import struct
 client=socket.socket()
 client.connect(('127.0.0.1', 8081))
 import os
 import json print(os.path.getsize('test.py'))
 data_head={'size':os.path.getsize('test.py'),'name':'test_new.py'}
 data_head_s=json.dumps(data_head)
 data_head_bytes=data_head_s.encode('utf8')
 print(data_head_bytes)
 #把头的长度以长度为4的字节发送过去
 head_len_bytes=struct.pack('i',len(data_head_bytes))
 client.send(head_len_bytes)
 client.send(data_head_bytes)
 with open('test.py','rb') as fr:
 data=fr.read()
 client.send(data)
- 测试文件 - import json
 ss={'name':'ypp','age':False}
 data=json.dumps(ss) #转json字典为字符串(json格式) print(data)
 print(type(data))
 data1=json.loads(data)#字符串的json格式的字典 转为字典
 print(data1)
 print(type(data1))
 sss=b'kkk\n\nkk'
 print(str(sss.decode('utf8')))
 
简单的文件ftp上传的更多相关文章
- 步步为营-70-asp.net简单练习(文件的上传和下载)
		大文件的上传一般通过FTP协议,而一般小的文件可以通过http协议来完成 1 通过asp.net 完成图片的上传 1.1 创建html页面 注意:1 method="post" ; ... 
- Ajax简单实现文件异步上传的多种方法
		1. 认识FormData对象 FormData是Html5新加进来的一个类,可以模拟表单数据 构造函数 FormData (optional HTMLFormElement form) (可选) 解 ... 
- 文件正在上传的转圈圈gif图片引出的fixed定位和absolute定位
		文件正在上传的转圈圈gif图片 一.文件上传时,未上传返回成功状态之前给个gif动态图片显示在页面,改善用户体验. <!--S 遮罩层 --> <div id="mas ... 
- 通过cmd完成FTP上传文件操作
		一直使用 FileZilla 这个工具进行相关的 FTP 操作,而在某一次版本升级之后,发现不太好用了,连接老是掉,再后来完全连接不上去. 改用了一段时间的 Web 版的 FTP 工具,后来那个页面也 ... 
- FTP 上传文件
		有时候需要通过FTP同步数据文件,除了比较稳定的IDE之外,我们程序员还可以根据实际的业务需求来开发具体的工具,具体的开发过程就不细说了,这里了解一下通过C#实现FTP上传文件到指定的地址. /// ... 
- 网络编程4 网络编程之FTP上传简单示例&socketserver介绍&验证合法性连接
		今日大纲: 1.FTP上传简单示例(详细代码) 2.socketserver简单示例&源码介绍 3.验证合法性连接//[秘钥加密(urandom,sendall)(注意:中文的!不能用)] 内 ... 
- .net FTP上传文件
		FTP上传文件代码实现: private void UploadFileByWebClient() { WebClient webClient = new WebClient(); webClient ... 
- FTP上传文件到服务器
		一.初始化上传控件. 1.我们这里用dropzone.js作为上传控件,下载地址http://www.dropzonejs.com/ 2.这里我们使用一个div元素作为dropzone载体. < ... 
- 再看ftp上传文件
		前言 去年在项目中用到ftp上传文件,用FtpWebRequest和FtpWebResponse封装一个帮助类,这个在网上能找到很多,前台使用Uploadify控件,然后在服务器上搭建Ftp服务器,在 ... 
随机推荐
- 编解码原理,Python默认解码是ascii
			编解码原理,Python默认解码是ascii 首先我们知道,python里的字符默认是ascii码,英文当然没问题啦,碰到中文的时候立马给跪. 不知道你还记不记得,python里打印中文汉字的时候需要 ... 
- 使用nginx实现动静分离的负载均衡集群
			一.概述: LB负载均衡集群分两类: LVS (四层)和 nginx或haproxy (七层) 客户端通过访问分发器的VIP来访问网站 |现在应用更复杂,比如现在网站页面有: .php .html . ... 
- Java泛型(9):动态类型安全
			因为可以向Java SE5之前的代码传递泛型容器,所以旧式代码仍有可能破坏你的容器.Java SE5中有一组便利工具,可以解决这种情况下类型检查的问题. 它们是静态方法checkedCollectio ... 
- 【Flink】flink执行jar报错:java.io.IOException: Error opening the Input Split file 或者 java.io.FileNotFoundException
			报错内容 flink执行jar时,报如下错误: org.apache.flink.client.program.ProgramInvocationException: Job failed. (Job ... 
- JavaScript中函数文档注释
			/** 方法说明 * @method 方法名 * @for 所属类名 * @param{参数类型}参数名 参数说明 * @return {返回值类型} 返回值说明 */ 
- 机器学习笔记——模型调参利器 GridSearchCV(网格搜索)参数的说明
			GridSearchCV,它存在的意义就是自动调参,只要把参数输进去,就能给出最优化的结果和参数.但是这个方法适合于小数据集,一旦数据的量级上去了,很难得出结果.这个时候就是需要动脑筋了.数据量比较大 ... 
- MySQL知识篇-SQL2
			1 数据库基本操作? (1) 查看数据库 show databases; (2)切换到指定的数据库 use dbname; (3)创建数据库 create database 库名 charset=ut ... 
- 【DSP开发】gel文件编写
			以下转载自:http://blog.csdn.net/henhen2002/article/details/4573447 GEL--通用扩展语言,无类型语言,只有int类型,当CCS运行时首先执行这 ... 
- 调用存储在session属性里的东西
			将对象放在session里面 request.getSession().setAttribute("username", username); //放到会话里 永EL表达式调用 $ ... 
- Notepad++ 用法技巧
			1 搜索技巧 [搜索中文]用正则表达式搜索:[一-龥] 2 用于SWIG语法的模板配置 notepad++是Windows平台上非常优秀的文本编辑器,速度快,功能强,还能自定义语言模板呢.很好用! 这 ... 
