【问题标题】:Convert Buffer data object into array in Nodejs在Nodejs中将Buffer数据对象转换为数组
【发布时间】:2020-03-09 06:48:55
【问题描述】:

TCP 服务器正在向我的 Nodejs 服务器发送数据。所以我想在Nodejs中将缓冲区对象数据转换成数组格式。

Buffer data format: 
data = <Buffer ff d8 ff e0 00 10 4a 46 49 46 00 01 01 ...>

我想将其解析为人类可读的格式。所以我使用data.toString(),然后它将以人类可读的JSON格式作为字符串返回数据。

JSON.parse() 函数用于将字符串解析为 JSON,但在将字符串转换为 JSON 时显示 JSON 解析错误。

您能否提供正确的代码以在 Nodejs 中将 TCP 数据获取为数组格式?

【问题讨论】:

  • 也许similar question 的回答会有所帮助。
  • Array.from( buffer ) ?但是,既然您需要 JSON,不如找出 JSON 的无效之处? (将 JSON 字符串粘贴到 jsonlint 或类似文件中,并修复无效的 JSON 语法。)

标签: javascript node.js json buffer bufferedreader


【解决方案1】:
From Buffer to ArrayBuffer:

function toArrayBuffer(buf) {
    var ab = new ArrayBuffer(buf.length);
    var view = new Uint8Array(ab);
    for (var i = 0; i < buf.length; ++i) {
        view[i] = buf[i];
    }
    return ab;
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-09-10
    • 2017-06-16
    • 2021-09-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-08-03
    • 2017-03-29
    相关资源
    最近更新 更多