【计网项目二】技术文档

这篇博客汇总了三个组员在项目二中的技术文档,涉及压缩参考、数据结构与传输流程。3317组员分享了压缩文件的参考链接及代码修改;3221组员介绍了数据结构、文件传输过程,包括头部结构的序列化和打包;3184组员阐述了文件头的传输过程,包括序列化、打包、发送、接收的步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

下为组员3317的技术文档

项目二压缩相关的参考

项目二中压缩文件相关参考:

https://blog.csdn.net/weixin_42029733/article/details/86559612

https://www.cnblogs.com/gufengchen/archive/2019/05/31/10956009.html

程序中运用的代码主要参考了第一个链接中的

def zipDir(dirpath, outFullName):

  '''

  压缩指定文件夹

  :param dirpath: 目标文件夹路径

  :param outFullName: 压缩文件保存路径+XXXX.zip

  :return: 无

  '''

  zip = zipfile.ZipFile(outFullName, 'w', zipfile.ZIP_DEFLATED)

  for path, dirnames, filenames in os.walk(dirpath):

​    #去掉目标和路径,只对目标文件夹下边的文件及文件夹进行压缩(包括父文件夹本身)

​    this_path = os.path.abspath('.')

​    fpath = path.replace(this_path, '')

​    for filename in filenames:

​      zip.write(os.path.join(path, filename), os.path.join(fpath, filename))

  zip.close()

其中把this_path = os.path.abspath('.')一句删去,修改了下一句的参数。

下为组员3221的技术文档

header_struct=struct=struct.Struct('i1024s')
data_struct=struct.Struct('1024s')

传送的过程中采用了两种类型的数据结构
头部结构由1个整型和1024个char类型构成即总共1028个字节
数据结构由1024个char类型构成总共1024个字节
然后再传输一个文件的时候,首先把头部发送过去

header = {
   
   
            'file_name': file_name,
            'file_size': os.path.getsize(file_path
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值