Запись байтового массива в двоичный файл Javascript
Я пытаюсь написать сценарий, который генерирует случайные числа, эти числа затем преобразуются в группы по 4 байта в каждой, затем эти 4-байтовые группы помещаются в массив Uint8. Наконец, я пытаюсь сохранить массив в двоичный файл. Вот мой код:
<html>
<head>
<title>Raandom Number Generator</title>
</head>
<body>
<script src="http://code.jquery.com/jquery-1.11.0.min.js"></script>
<script src="filesaver.min.js"></script>
<script type="text/javascript">
$(function() {
if (!Date.now) {
Date.now = function() {
return new Date().getTime();
};
}
alert("started");
var currentMousePos = {
x : -1,
y : -1
};
var randomData = [];
var bytes = new Int8Array(4);
$(document).mousemove(function(event) {
if(randomData.length>=1231){
$(document).unbind('mousemove');
console.log("Finished generating numbers ... trying to save file");
randomData = new Uint8Array(randomData);
var blob = new Blob(randomData, {type: "application/octet-stream"});
saveAs(blob, "rand.bin");
return;
}
currentMousePos.x = event.pageX;
currentMousePos.y = event.pageY;
var longRandomNumber = Date.now() * (event.pageX + 1)
* (event.pageY + 1);
for ( var i = 3; i >= 0; i--) {
bytes[i] = longRandomNumber & (255);
longRandomNumber = longRandomNumber >> 8
}
for ( var i = 0; i < 4; i++) {
randomData.push(bytes[i]);
}
console.log(randomData.length);
});
})
</script>
</body>
</html>
Проблема в том, что сгенерированный файл содержит числаplain numbers
например, элемент в Uint8Array может быть 65, в моем понимании в двоичном виде это значение должно быть сохранено как заглавная букваA но он хранится как65 вместо
Заметка
filesaver.min.js - это библиотека, которую я использую для сохранения файлов из JS (Ссылка на GitHub)