65 lines
1.7 KiB
TypeScript
Raw Normal View History

2024-01-05 11:11:15 +08:00
import FileUtil from '../../../common/utils/File'
import zlib from '@ohos.zlib';
2024-07-31 13:47:40 +08:00
import promptAction from '@ohos.promptAction';
import router from '@ohos.router';
2024-01-05 11:11:15 +08:00
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`);
const folderPath = await fileUtil.initFolder(`/models`);
this.folderPath = folderPath;
}
// 存储zip文件并解压
public storingFiles = async (str) => {
const {fileUtil,folderPath} = this;
2024-02-21 14:53:53 +08:00
await fileUtil.editFile(`${folderPath}/model.zip`,str,'overWrite')
2024-01-05 11:11:15 +08:00
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;
2024-07-31 13:47:40 +08:00
try {
const content = fileUtil.getFileContent(`${folderPath}/${fileName}`)
return content;
}catch (e){
2024-08-08 20:12:19 +08:00
console.info('surenjun',JSON.stringify(e))
2024-07-31 13:47:40 +08:00
promptAction.showToast({
2024-08-08 20:12:19 +08:00
message:`请检查模型路径${folderPath}/${fileName}是否正确!`,
2024-07-31 13:47:40 +08:00
duration:4000
})
}
2024-01-05 11:11:15 +08:00
}
}