javascript - 如何使用 javascript 将数组缓冲区保存到磁盘上的本地文件

标签 javascript arraybuffer

我正在练习使用websocket进行编程,我正在构建一个java websocket服务器并希望将二进制数据发送到websocket客户端,然后客户端可以通过websocket获取该数据并将其保存到磁盘上的本地文件,但我不知道如何使用 javascript 将数组缓冲区写入文件。 我的示例代码如下所示

var ws = new WebSocket(URL);
ws.binaryType = "arraybuffer";
ws.onmessage = function(evt) {
     if (evt.data instanceOf ArrayBuffer) {
         // binary message is riecieved from server and i want to save it as a local file 
     
     }
};

感谢您的帮助

最佳答案

您可以创建可以保存到文件并从文件中读取的文本/字符串表示形式:

// returns String
function getArrayBufferString(arrayBuffer) {
  return new Uint8Array(arrayBuffer).toString()
}

// returns ArrayBuffer
function parseArrayBufferString(string) {
  return new Uint8Array(string.split(',')).buffer
}

关于javascript - 如何使用 javascript 将数组缓冲区保存到磁盘上的本地文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60359611/

相关文章:

javascript - 从 Web SQL 数据库检索音频并使用 Web Audio API 播放

javascript - Safari 中的 CSS 缩放问题

javascript - 真的通过 C#.NET 2.0 或更高版本检测浏览器支持 Javascript 吗?

javascript - axios 请求完成后,如何渲染 react 组件,我能够获取数据,但它显示 null 两次,然后显示数据

javascript - 似乎无法从 D3js 工作中获取示例?

javascript - 如何将低精度数字(2-10 位)写入数组缓冲区/blob?

javascript - phantomjs:将base64字符串保存为文件(png)

javascript - 无法在分离的 ArrayBuffer 上执行 ArrayBuffer.prototype.slice

JavaScript - 如何将音频文件加载到 readAsArrayBuffer 中?

javascript - 在 localhost 上启用 SharedArrayBuffer