お世話になります。
今朝おたずねした質問に対していただいた回答が、残念ながら作動しませんでした。
どこに問題があるのかお教えいただけますでしょうか。
実現したいこと
題名どおり、バイナリのファイルをブラウザ上で16進数で表示すること
発生している問題
DOMで読み込んだファイルの内容ではなく、blob 設定の初期値がスクリプト作動後も同じまま表示されるため、コード変換の結果が出されない
よろしくお願いいたします。
html
1 2<!DOCTYPE html><html> 3<head><meta charset="UTF-8"> 4</head> 5<body> 6 7<br> 8 <input type="file" id="readFile"> 9<hr> 10 <div id="result"></div> 11 12<script> 13 14var newFile = new Blob(['2020 August hello world']); 15 16var resultElement = document.getElementById( "result" ) ; 17 18var fr = new FileReader(); 19 20fr.addEventListener('load', 21 function () 22 { 23 var u = new Uint8Array(this.result), 24 a = new Array(u.length), 25 i = u.length; 26 27 while (i--) // map to hex 28 a[i] = (u[i] < 16 ? '0' : '') + u[i].toString(16); 29 30 u = null; // free memory 31 32 resultElement.appendChild( new Text( a ) ) ; 33 } 34); 35 36fr.readAsArrayBuffer(newFile); 37 38 39</script> 40</body> 41</html>
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/08/30 03:49
2020/08/30 04:03