HarmonyOS base64编码相关?

使用util.Base64Helper().encodeToStringSync进行编码或者使用decodeSync解码的过程中,无论入参是什么,编码/解码结果都是""。

阅读 453
1 个回答
import { buffer } from '@kit.ArkTS'

let DEFAULT_ENCODING: buffer.BufferEncoding = 'utf-8'

export function stringToUint8Array(input: string, inputEncoding: buffer.BufferEncoding = DEFAULT_ENCODING): Uint8Array {
  return new Uint8Array(buffer.from(input, inputEncoding).buffer)
}

export function base642Uint8Array(data: string) {
  return stringToUint8Array(data, 'base64')
}

export function uint8ArrayToString(input: Uint8Array, outEncoding: buffer.BufferEncoding = DEFAULT_ENCODING) {
  return buffer.from(input).toString(outEncoding)
}

export function base64Encode(input: string | Uint8Array,
  inputEncoding: buffer.BufferEncoding = DEFAULT_ENCODING): string {
  if (typeof input === "string") {
    return buffer.from(input, inputEncoding).toString('base64')
  } else {
    return buffer.from(input).toString('base64')
  }
}

export function base64Decode(data: string, outEncoding: buffer.BufferEncoding = DEFAULT_ENCODING) {
  return buffer.from(data, 'base64').toString(outEncoding)
}
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进