开启辅助访问 切换到宽版

精易论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

用微信号发送消息登录论坛

新人指南 邀请好友注册 - 我关注人的新帖 教你赚取精币 - 每日签到


求职/招聘- 论坛接单- 开发者大厅

论坛版规 总版规 - 建议/投诉 - 应聘版主 - 精华帖总集 积分说明 - 禁言标准 - 有奖举报

查看: 84|回复: 1
收起左侧

[分享] ZAR压缩包操作类

[复制链接]
发表于 8 小时前 | 显示全部楼层 |阅读模式   河北省唐山市
DESIGN.md:
# ZAR 归档模块 架构设计文档
版本:V1.0
日期:2026

## 1. 项目概述
ZAR 是一套基于 ARP(RyArchive) 引擎封装的自定义归档系统,用于高效管理多文件与目录结构的打包、存储、读取、解压。

设计目标:
- 上层接口简洁稳定
- 内部结构分层解耦
- 路径处理统一规范
- 支持大文件、多文件批量操作
- 可跨语言对接(C++ / 易语言

## 2. 系统四层架构

### 2.1 第一层:对外接口层(API Layer)
**职责**
提供统一、稳定、无业务侵入的外部调用入口。
所有上层业务仅依赖该层。

**主要接口**
- 创建压缩包
- 打开压缩包
- 关闭压缩包
- 压缩保存 / 压缩保存Ex
- 解压释放 / 解压释放Ex
- 取文件列表
- 文件/目录存在判断
- 删除包内条目
- 获取包内文件长度

**特点**
- 无复杂逻辑
- 仅做参数校验与状态判断
- 向下调用业务逻辑层

---

### 2.2 第二层:业务逻辑层(Business Layer)
**职责**
模块核心中枢,实现所有归档业务流程。

**核心功能**
- 文件列表遍历与过滤
- 基准目录剥离,生成相对路径
- 自动构建目录树结构
- 区分目录项与文件项
- 批量计数与进度计算
- 解压时先重建目录再写入文件
- 包内索引管理与遍历

**流程**
压缩:
文件列表 → 路径处理 → 构建目录 → 写入目录项 → 写入文件项 → 保存

解压:
读取包索引 → 拆分目录与文件 → 重建目录 → 依次写入文件

---

### 2.3 第三层:路径适配层(Path Adapt Layer)
**职责**
统一所有路径格式,消除路径风格差异。

**核心处理**
- 统一 `/``\` 为 Windows 标准反斜杠
- 自动补全目录末尾斜杠
- 格式化重复斜杠
- 路径合法性修正
- 保证底层引擎识别一致性

---

### 2.4 第四层:底层引擎层(Engine Layer / ARP)
**职责**
执行真实磁盘 IO、索引读写、压缩解压算法。

**核心能力**
- 归档文件创建、打开、保存、关闭
- 包内数据项写入与读取
- 索引结构管理
- 压缩算法调用
- 二进制数据存储

## 3. 模块依赖关系
接口层 → 业务逻辑层 → 路径适配层 → ARP 引擎层

## 4. 数据流向
外部调用 → 接口校验 → 业务处理 → 路径规范化 → 底层IO → 结果返回

## 5. 设计原则
- 高内聚低耦合
- 接口稳定,内部可重构
- 路径统一优先
- 引擎与业务分离
- 支持扩展新压缩算法
- 支持进度回调与状态反馈


易如云ZAR压缩包类.7z

97.22 KB, 下载次数: 5, 下载积分: 精币 -2 枚

7z.png
ec.png

签到天数: 22 天

发表于 2 小时前 | 显示全部楼层   河北省石家庄市
感谢分享
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则 致发广告者

发布主题 收藏帖子 返回列表

sitemap| 易语言源码| 易语言教程| 易语言论坛| 易语言模块| 手机版| 广告投放| 精易论坛
拒绝任何人以任何形式在本论坛发表与中华人民共和国法律相抵触的言论,本站内容均为会员发表,并不代表精易立场!
论坛帖子内容仅用于技术交流学习和研究的目的,严禁用于非法目的,否则造成一切后果自负!如帖子内容侵害到你的权益,请联系我们!
防范网络诈骗,远离网络犯罪 违法和不良信息举报QQ: 793400750,邮箱:wp@125.la
网站简介:精易论坛成立于2009年,是一个程序设计学习交流技术论坛,隶属于揭阳市揭东区精易科技有限公司所有。
Powered by Discuz! X3.4 揭阳市揭东区精易科技有限公司 ( 粤ICP备2025452707号) 粤公网安备 44522102000125 增值电信业务经营许可证 粤B2-20192173

快速回复 返回顶部 返回列表