TypeScript 字符串与字节数组相互转换方法

本文将介绍在 TypeScript 中如何将字符串转换为字节数组,以及如何将字节数组转换为字符串。

将字符串转换为字节数组

function str2buffer(content: string): ArrayBuffer {
  var buf = new ArrayBuffer(content.length);
  var bufView = new Uint8Array(buf);
  for (let i = 0, strLen = content.length; i < strLen; i++) {
    bufView[i] = content.charCodeAt(i);
  }
  return buf;
}

该方法使用 ArrayBufferUint8Array 来创建字节数组,并逐个字符将字符串转换为 ASCII 码存储在字节数组中。

将字节数组转换为字符串

function buffer2str(buffer: ArrayBuffer): string {
  var bufView = new Uint8Array(buffer);
  var str = '';
  for (let i = 0, byteLen = bufView.length; i < byteLen; i++) {
    str += String.fromCharCode(bufView[i]);
  }
  return str;
}

该方法使用 Uint8Array 获取字节数组的视图,并使用 String.fromCharCode 方法将每个字节转换为对应的字符,最终拼接成字符串。

示例

const str = 'Hello, world!';
const buffer = str2buffer(str);
const newStr = buffer2str(buffer);
console.log(newStr); // 输出: Hello, world!

通过以上示例代码,可以验证字符串与字节数组的相互转换功能。


原文地址: https://www.cveoy.top/t/topic/o1Ex 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录