import abilityAccessCtrl, { Permissions } from '@ohos.abilityAccessCtrl' import promptAction from '@ohos.promptAction' import fileAccess from '@ohos.file.fileAccess' import common from '@ohos.app.ability.common' import Want from '@ohos.app.ability.Want' import fs from '@ohos.file.fs' import FileUtil from '../../../common/utils/File' import zlib from '@ohos.zlib'; const MODELTAG = 'MODELTAG' export default class FileModel{ //后续文件路径待替换 private fileUtil: FileUtil public folderPath: string constructor(context){ (async ()=>{ const fileUtil = new FileUtil(context) this.fileUtil = fileUtil })() } // 设置文件夹 public initFolder = async () => { const {fileUtil} = this await fileUtil.initFolder(`/models/model_enc`); //TODO 删除待优化 const isDeletedModelEnc= await this.fileUtil.deleteF('models/model_enc',1) const isDeletedModels = await this.fileUtil.deleteF('models',1) const folderPath = await fileUtil.initFolder(`/models`); this.folderPath = folderPath; } // 存储zip文件并解压 public storingFiles = async (str) => { const {fileUtil,folderPath} = this; await fileUtil.addFile(`${folderPath}/model.zip`,str) let options = { level: zlib.CompressLevel.COMPRESS_LEVEL_DEFAULT_COMPRESSION, memLevel: zlib.MemLevel.MEM_LEVEL_DEFAULT, strategy: zlib.CompressStrategy.COMPRESS_STRATEGY_DEFAULT_STRATEGY }; zlib.unzipFile( `${folderPath}/model.zip`, `${folderPath}`, options).then((data) => { console.log("unzipFile result:" + data); }).catch((err)=>{ console.log("catch((err)=>" + err); }) } //获取文件内容 public getModelContent = (folderPath,fileName) => { const {fileUtil} = this; const content = fileUtil.getFileContent(`${folderPath}/${fileName}`) return content; } }