ホームページ > ウェブフロントエンド > jsチュートリアル > Base64 文字列から JavaScript BLOB を作成するにはどうすればよいですか?

Base64 文字列から JavaScript BLOB を作成するにはどうすればよいですか?

Mary-Kate Olsen
リリース: 2024-12-21 14:11:09
オリジナル
582 人が閲覧しました

How to Create a JavaScript Blob from a Base64 String?

JavaScript で Base64 文字列から Blob を作成する

base64 でエンコードされた文字列を Blob オブジェクトに変換することは、バイナリ データを扱う場合の JavaScript の一般的なタスクです。これは、データを画像として表示したり、ユーザーのデバイスにダウンロードしたりする場合に便利です。

Base64 文字列のデコード

最初のステップは、base64 文字列をデコードすることです。これは、base64 でエンコードされた文字列を、元のバイナリ データを含む新しい文字列に変換する atob 関数を使用して実現できます。

const byteCharacters = atob(b64Data);
ログイン後にコピー

型付きバイト配列への変換

atob 関数それぞれがバイトを表す文字列が生成されます。これらの文字を実際のバイトに変換するには、.charCodeAt メソッドを使用して文字コード ポイントを取得します。これらのコード ポイントはバイトの値になります。

const byteNumbers = new Array(byteCharacters.length);
for (let i = 0; i < byteCharacters.length; i++) {
    byteNumbers[i] = byteCharacters.charCodeAt(i);
}
ログイン後にコピー

次に、byteNumbers 配列をコンストラクターに渡すことで、Uint8Array を作成できます。

const byteArray = new Uint8Array(byteNumbers);
ログイン後にコピー

Blob の作成

最後に、byteArray を配列でラップし、それをBLOB コンストラクター。

const blob = new Blob([byteArray], {type: contentType});
ログイン後にコピー

base64 文字列から BLOB を作成する方法の例を次に示します。

const contentType = 'image/png';
const b64Data = 'iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAHElEQVQI12P4//8/w38GIAXDIBKE0DHxgljNBAAO9TXL0Y4OHwAAAABJRU5ErkJggg==';

const blob = new Blob([atob(b64Data)], {type: contentType});
ログイン後にコピー

Blob を作成したら、これを使用して、データをユーザーに表示したり、デバイスにダウンロードしたりできます。 URL.createObjectURL 関数を使用して BLOB の URL を作成し、画像の src またはダウンロード リンクの href として設定できます。

以上がBase64 文字列から JavaScript BLOB を作成するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート