# FileBackup **Repository Path**: dong-haifan/FileBackup ## Basic Information - **Project Name**: FileBackup - **Description**: No description available - **Primary Language**: Unknown - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 3 - **Created**: 2025-03-05 - **Last Updated**: 2025-09-16 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 实现用户文件本地备份与恢复 ### 介绍 本示例基于fs模块和picker模块实现了用户文件本地备份与恢复,通过对图库文件和文档文件的拷贝、删除、保存、压缩解压、预览等功能的实现,详细演示了用户文件和应用文件的访问方式,以及文件的基本操作,旨在帮助开发者熟练掌握文件访问与操作大的技巧。 ### 效果预览 | 首页 | |---------------------------------| | ![image](screenshots/index.png) | ### 使用说明: 本示例可以按照以下步骤操作: 1. 点击“+”号:点击该按钮可以导入/新建文件。 2. 点击文件列表项目:预览该文件。 3. 点击文件列表项目保存图标:保存该文件到图库/文档。 4. 点击文件列表项目删除图标:删除文件。 ### 工程目录 ``` ├──entry/src/main/ets/ │ ├──common │ │ └──utils │ │ ├──DocumentFile.ets // 文档文件操作类 │ │ ├──FileOperate.ets // 文件读写操作类 │ │ ├──FilePreview.ets // 文件预览类 │ │ └──PhotoFile.ets // 图片文件操作类 │ ├──entryability │ │ └──EntryAbility.ets // 程序入口类 │ ├──entrybackupability │ │ └──EntryBackupAbility.ets // 备份恢复类 │ ├──model │ │ └──DataBase.ets // 数据库操作类 │ ├──pages │ │ └──Index.ets // 首页 │ ├──view │ │ ├──AddFileButton.ets // 导入文件按钮 │ │ ├──ImportFileDialog.ets // 导入文件弹窗 │ │ ├──ListItemView.ets // 文件列表项视图 │ │ └──NewFileDialog.ets // 新建文件弹窗 │ └──viewmodel │ └──FileViewModel.ets // 文件列表项 └──entry/src/main/resources // 应用资源目录 ``` ### 具体实现 1. 从图库中获取图片:使用photoViewPicker.select()方法。 2. 从文档中获取文件:使用documentViewPicker.select()方法。 3. 获取图片缩略图:使用photoAsset.getThumbnail()方法。 4. 压缩文件:使用zlib.compressFile()方法。 5. 解压文件:使用zlib.decompressFile()方法。 6. 文件预览:使用filePreview.openPreview()方法。 7. 将图片文件保存至图库:使用phAccessHelper.showAssetsCreationDialog()方法。 8. 将文件保存至文档:使用documentViewPicker.save()方法。 ### 相关权限 不涉及 ### 依赖 不涉及 ### 约束与限制 1. 本示例仅支持标准系统上运行,支持设备:华为手机。 2. HarmonyOS系统:HarmonyOS 5.0.5 Release及以上。 3. DevEco Studio版本:DevEco Studio 5.0.5 Release及以上。 4. HarmonyOS SDK版本:HarmonyOS 5.0.5 Release SDK及以上。