16進数へのJavascript ArrayBuffer

d123:

16進数文字列に変換したいJavascript ArrayBufferがあります。

私が呼び出すことができる関数、またはすでにそこにすでに記述されている関数を知っている人はいますか?

文字列関数へのarraybufferしか見つけることができませんでしたが、代わりに配列バッファーの16進ダンプが必要です。

Frxstrem;

function buf2hex(buffer) { // buffer is an ArrayBuffer
  return Array.prototype.map.call(new Uint8Array(buffer), x => ('00' + x.toString(16)).slice(-2)).join('');
}

// EXAMPLE:
const buffer = new Uint8Array([ 4, 8, 12, 16 ]).buffer;
console.log(buf2hex(buffer)); // = 04080c10

この機能は4つのステップで機能します。

  1. バッファを配列に変換します。
  2. x配列ごとに、その要素を16進文字列に変換します(たとえば、に12なりますc)。
  3. 次に、その16進数文字列を取り、左にゼロを埋め込みます(例:にcなる0c)。
  4. 最後に、すべての16進値を受け取り、それらを1つの文字列に結合します。

以下はもう少し理解しやすい長い実装ですが、基本的に同じことを行います。

function buf2hex(buffer) { // buffer is an ArrayBuffer
  // create a byte array (Uint8Array) that we can use to read the array buffer
  const byteArray = new Uint8Array(buffer);
  
  // for each element, we want to get its two-digit hexadecimal representation
  const hexParts = [];
  for(let i = 0; i < byteArray.length; i++) {
    // convert value to hexadecimal
    const hex = byteArray[i].toString(16);
    
    // pad with zeros to length 2
    const paddedHex = ('00' + hex).slice(-2);
    
    // push to array
    hexParts.push(paddedHex);
  }
  
  // join all the hex values of the elements into a single string
  return hexParts.join('');
}

// EXAMPLE:
const buffer = new Uint8Array([ 4, 8, 12, 16 ]).buffer;
console.log(buf2hex(buffer)); // = 04080c10

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

JavaScriptでデータの16進文字列をArrayBufferに変換する方法は?

分類Dev

arraybufferからのPDFの表示

分類Dev

ArrayBufferからBlobへの変換

分類Dev

JavaScript XMLHttpRequest.responseType as "arraybuffer"-現在のarraybufferチャンクを取得する方法

分類Dev

Scalaで「ArrayBuffer.empty [A]」または「ArrayBuffer [A]()」を使用した空のArrayBufferの初期化の違い

分類Dev

JavascriptでArrayBufferをintに変換する

分類Dev

不変のvalと可変のArrayBuffer

分類Dev

文字列とArrayBuffer間の変換

分類Dev

UTF-8 ArrayBufferとString間の変換

分類Dev

NodejsのArrayBufferから画像を作成する

分類Dev

ReactNativeのarraybufferからPDFを取得する

分類Dev

ReactのArrayBufferにPNG画像を表示する

分類Dev

Javascript:16進数へのUnicode文字列

分類Dev

Typescript:数値の関数オーバーロード解決| ArrayBuffer

分類Dev

16進数へのARM命令

分類Dev

javascript ArrayBuffer、それは何のためですか?

分類Dev

JavaScriptのArrayBufferからShort値を取得する方法は?

分類Dev

ArrayBufferをオフセット付きの別のArrayBufferに読み取り/書き込み/コピーする

分類Dev

別の結果を返すTextDecoder / TextEncoderを使用して、ArrayBufferをStringに変換してからArrayBufferに戻す

分類Dev

Javascript:XMLHttpRequestを使用してarrayBufferを送信する

分類Dev

Javascriptで `ArrayBuffer`を` SharedArrayBuffer`にキャストする方法は?

分類Dev

Javaバイト[]-> Base64-> Javascript ArrayBuffer-> Base64-> Byte []から

分類Dev

JavaScript: 16 進数から 10 進数へのコンバーター エラー

分類Dev

ArrayBufferとBlobの違いは何ですか?

分類Dev

ArrayBufferとArrayの違いは何ですか

分類Dev

配列とArrayBufferの違いは何ですか?

分類Dev

コピーせずに既存のArrayBufferをCanvasに描画します

分類Dev

JS | arrayBufferをUint8ClampedArrayに変換する際の問題

分類Dev

base64またはArrayBufferからのVue画像

Related 関連記事

  1. 1

    JavaScriptでデータの16進文字列をArrayBufferに変換する方法は?

  2. 2

    arraybufferからのPDFの表示

  3. 3

    ArrayBufferからBlobへの変換

  4. 4

    JavaScript XMLHttpRequest.responseType as "arraybuffer"-現在のarraybufferチャンクを取得する方法

  5. 5

    Scalaで「ArrayBuffer.empty [A]」または「ArrayBuffer [A]()」を使用した空のArrayBufferの初期化の違い

  6. 6

    JavascriptでArrayBufferをintに変換する

  7. 7

    不変のvalと可変のArrayBuffer

  8. 8

    文字列とArrayBuffer間の変換

  9. 9

    UTF-8 ArrayBufferとString間の変換

  10. 10

    NodejsのArrayBufferから画像を作成する

  11. 11

    ReactNativeのarraybufferからPDFを取得する

  12. 12

    ReactのArrayBufferにPNG画像を表示する

  13. 13

    Javascript:16進数へのUnicode文字列

  14. 14

    Typescript:数値の関数オーバーロード解決| ArrayBuffer

  15. 15

    16進数へのARM命令

  16. 16

    javascript ArrayBuffer、それは何のためですか?

  17. 17

    JavaScriptのArrayBufferからShort値を取得する方法は?

  18. 18

    ArrayBufferをオフセット付きの別のArrayBufferに読み取り/書き込み/コピーする

  19. 19

    別の結果を返すTextDecoder / TextEncoderを使用して、ArrayBufferをStringに変換してからArrayBufferに戻す

  20. 20

    Javascript:XMLHttpRequestを使用してarrayBufferを送信する

  21. 21

    Javascriptで `ArrayBuffer`を` SharedArrayBuffer`にキャストする方法は?

  22. 22

    Javaバイト[]-> Base64-> Javascript ArrayBuffer-> Base64-> Byte []から

  23. 23

    JavaScript: 16 進数から 10 進数へのコンバーター エラー

  24. 24

    ArrayBufferとBlobの違いは何ですか?

  25. 25

    ArrayBufferとArrayの違いは何ですか

  26. 26

    配列とArrayBufferの違いは何ですか?

  27. 27

    コピーせずに既存のArrayBufferをCanvasに描画します

  28. 28

    JS | arrayBufferをUint8ClampedArrayに変換する際の問題

  29. 29

    base64またはArrayBufferからのVue画像

ホットタグ

アーカイブ