From f44649d8dc0a0f5ddc61f1ce6bb4f5ed765041a2 Mon Sep 17 00:00:00 2001 From: XiuYun CHEN Date: Thu, 15 May 2025 15:16:02 +0800 Subject: [PATCH] =?UTF-8?q?=E6=8F=90=E4=BA=A4=E7=BD=91=E7=BB=9C=E8=AF=B7?= =?UTF-8?q?=E6=B1=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- commons/basic/src/main/ets/utils/ChangeUtil.ets | 17 +++++++++++++++-- 1 file changed, 15 insertions(+), 2 deletions(-) diff --git a/commons/basic/src/main/ets/utils/ChangeUtil.ets b/commons/basic/src/main/ets/utils/ChangeUtil.ets index 8adaf81..271c384 100644 --- a/commons/basic/src/main/ets/utils/ChangeUtil.ets +++ b/commons/basic/src/main/ets/utils/ChangeUtil.ets @@ -4,8 +4,8 @@ import { CryptoJS } from '@ohos/crypto-js'; import { logger } from './logger'; import image from '@ohos.multimedia.image'; import fs from '@ohos.file.fs'; - - +import { fileIo } from '@kit.CoreFileKit'; +import util from '@ohos.util'; export class ChangeUtil { /** * 将HashMap转成JsonString @@ -57,6 +57,19 @@ export class ChangeUtil { return reg2.test(password); } + + static async convertUriToBase64(uri: string): Promise { + // 打开文件并读取数据 + const file = fileIo.openSync(uri, fileIo.OpenMode.READ_ONLY); + const stat = await fileIo.stat(file.fd); + const buffer = new ArrayBuffer(stat.size); + fileIo.readSync(file.fd, buffer); + fileIo.closeSync(file); + + // 编码为 Base64 + const base64Helper = new util.Base64Helper(); + return base64Helper.encodeToStringSync(new Uint8Array(buffer)); + } /** * 将图片转换为base64字符串 * @param imageUri 图片URI