Для тех, кто хочет прочитать двоичный файл, используя charCodeAt
по результатам readFile
, не возвращайте ожидаемые значения для байтов выше 0x7F
. Если вы хотите прочитать двоичный файл, лучше работает что-то вроде:
var readBinaryFile=function(path){
var file=java.io.RandomAccessFile(path,'r');
var bytes=java.lang.reflect.Array.newInstance(java.lang.Byte.TYPE, file.length());
file.read(bytes);
file.close();
return bytes;
}
Что даст вам байтовый массив.
Предупреждение: Когда вы читаете байты из этого массива, он будет обрабатывать их как подписанные, т.е. 0xFF
интерпретируется как -1
. (Если вы знаете простой способ исправить это, пожалуйста, прокомментируйте.)