当前位置: 首页 > news >正文

绍兴以往网站招工做广安网站建设推荐

绍兴以往网站招工做,广安网站建设推荐,土木在线网,网站建设小程序定制开发文件系统管理项目说明文档 项目说明 基本任务 在内存中开辟一个空间作为文件存储器,在其上实现一个简单的文件系统退出这个文件系统时,需要该文件系统的内容保存到磁盘上,以便下次可以将其回复到内存中来 具体要求 文件存储空间管理可采取链…

文件系统管理项目说明文档

项目说明

  • 基本任务

    • 在内存中开辟一个空间作为文件存储器,在其上实现一个简单的文件系统
    • 退出这个文件系统时,需要该文件系统的内容保存到磁盘上,以便下次可以将其回复到内存中来
  • 具体要求

    • 文件存储空间管理可采取链接结构(如FAT文件系统中的显式链接等)或者其他学过的方法
    • 空闲空间管理可采用位图或者其他方法
    • 文件目录采用多级目录结构,目录项目中应包含:文件名、物理地址、长度等信息
    • 需提供格式化,创建子目录,删除子目录,显示目录,更改当前目录,创建文件,打开文件,关闭文件,写文件,读文件,删除文件等操作

功能实现

各部分组件说明

  • 顶部菜单栏,提供了所有文件操作,包括格式化,保存,增加/删除/重命名和关于,教程

    在这里插入图片描述

  • 上方地址栏显示当前选中文件/文件夹绝对路径

在这里插入图片描述

  • 左侧文件目录,以树状结构展示文件架构

    在这里插入图片描述

  • 右侧文本编辑框,实时显示选中文件的内容,修改后点击下方SAVE按钮可保存

在这里插入图片描述

  • 下方脚注显示当前选中文件/文件夹的信息

在这里插入图片描述

  • 右键显示菜单

在这里插入图片描述

实现原理

  1. 构建一个FileSystem类(见file_system_components.py,可以模拟文件系统的各种操作,其中:

    • 文件块用FCB类表示,存储其名称、长度、创建时间、修改时间
    • 磁盘存储用Disk类表示
    • 文件组织方式采用链接方式中的FAT方法。代码中构建了一个FAT类,以存储文件的链表存储结构。
    • 空闲区间用位图存储,以FreeSpace类表示
    • 多级目录用FileTree表示,其中:
      • FileTreeNode为多级目录中的文件夹结点
      • 多级目录中的文件结点直接为FCB,且一定为叶节点
  2. 增加文件时,增加FCB块,并加入到FileTree中;写入时,额外写入到磁盘Disk中,同时将FreeSpace中对应位置赋值0:

    cur_index = FAT_ENDwhile data != "":next_index = self.find_free_index()if next_index == -1:raise AssertionError("don't have enough space!!")if cur_index == FAT_END:fcb.start_address = next_indexelse:self.fat.table[cur_index] = next_indexself.disk[next_index] = data[:BLOCK_SIZE]data = data[BLOCK_SIZE:]self.free_space.bitmap[next_index] = SPACE_OCCUPYcur_index = next_indexself.fat.table[cur_index] = FAT_END
    

    删除文件同理:

    cursor = fcb.start_address
    if cursor is not None:while cursor != FAT_END:self.disk[cursor] = ""self.free_space.bitmap[cursor] = SPACE_FREEnext_position = self.fat.table[cursor]self.fat.table[cursor] = SPACE_FREEcursor = next_position
    
  3. 构建对应的UI,并用PyQt中的QTreeView模拟左侧的树结构,每次操作后更新QTreeView中的model

运行方法

  • 直接运行
    已经通过pyinstaller生成了Windows上的可执行文件。
    在Windows系统上点击file_system_main.exe,即可运行程序

  • 编译运行

    • Python version:3.8

    • 安装PyQt5和qt-material(用来应用本程序所需的UI样式)和bitarray(用位图表示剩余空间)

      pip install PyQt5
      pip install qt-material
      pip install bitarray
      
    • 运行源码

      python file_system_main.py
      

运行截图

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

项目总结

项目亮点

  • 采用PyQt5进行图形化开发,并应用qt-material,增加较多图标,较为美观
  • 提供了菜单栏工具和右键选择菜单两种操作方式

改进方向

  • 未来可以尝试采用别的文件管理策略
http://www.yayakq.cn/news/16557/

相关文章:

  • 口碑好网站建设公司电话原生态旅游网站开发需求分析
  • 酒店网站怎么制作天河外贸网站建设
  • 建设门户网站 业务模板做网站在哪里买空间域名
  • 网站可以个人做吗互联网销售是什么意思
  • 做资源下载网站条件wordpress能做企业网站吗
  • 2018年做淘宝客网站需要备案嘛冒险岛钓鱼网站做啥用
  • 专门做旅游攻略的网站有哪些wordpress去掉评论界面
  • 佛山 网站做资讯网站怎么挣钱
  • 国外免费搭建网站php根据ip 跳转网站
  • 常见的微网站平台有哪些网站已付款方式
  • 宝丰网站制作效果好韩国热搜榜
  • 优秀学习网站北京综合网络营销
  • 天猫开店流程及费用2022长沙网站排名优化报价
  • 深圳网站建设有哪些公司福建省网站备案注销
  • 免费动态素材网站dedecms 门户网站
  • 江苏建设纸质考试网站杭州做网站制作
  • seo确定关键词seo优化推广公司
  • 深圳网站维护有限公司长春中医药大学
  • 常德经开区网站wordpress 后台 324
  • 公司网站用什么cms系统学校后勤部网站建设方案
  • 网站支付功能建设网站的内容有哪些内容
  • jsp做电影网站沧州网站改版优化
  • 合肥有哪些公司是做网站的网站设置为起始页
  • 做自媒体需要关注什么网站营业推广的形式包括
  • 有一个网站专门做民宿微信公众号怎么做文章排版
  • phpcms仿行业网站国家高新技术企业认定管理工作网
  • 网站可以做弹窗广告么百度站长如何验证网站
  • 营销类网站建设需要注意的问题济南企业宣传片制作公司
  • 营销企业网站建设应遵守的原则装修工人自己接单的app
  • 做网站通常又什么开发完成网站卖掉被拿来做网站了