harmonyos文件转换base64
·
文件转换base64
使用场景:语音,视频,图片,文件
代码API:9
代码模型:stage
代码介绍:示范在stage模型下读取文件并转换成base64
导入库
import fs from '@ohos.file.fs';
import util from '@ohos.util';
import common from '@ohos.app.ability.common';
执行代码:
let context = getContext(this) as common.UIAbilityContext;
let cacheDir = context.cacheDir;
let filePath = cacheDir + '/01.mp3';
console.info('filePath:' + filePath) // 打印地址
console.info(`第一次:${startTime - new Date().getTime()}`)
let file = fs.openSync(filePath, fs.OpenMode.READ_WRITE); // 打开文件
let stat = fs.statSync(filePath); // 获取文件状态
console.info("stat.size:"+stat.size) // 打印文件的长度
let buf = new ArrayBuffer(stat.size); // 创建一个ArrayBuffer对象
let base64 = new util.Base64Helper(); // 实例化Base64Helper
let num = fs.readSync(file.fd, buf); // 读取文件
let data = base64.encodeSync(new Uint8Array(buf.slice(0, num))) // 转换成Uint8Array
console.info(`data长度:${data.length}`)
console.info(`data:${data}`)
let textDecoder = util.TextDecoder.create('utf-8', { ignoreBOM : true })
let retStr = textDecoder.decodeWithStream( data , {stream: false}); // 可以把Uint8Array转码成base64
console.info(retStr) // 打印结果
更多推荐




所有评论(0)