FileReader() reading as Array Buffer
This commit is contained in:
parent
f4a6df4934
commit
31cc9aa611
2 changed files with 19 additions and 6 deletions
|
|
@ -50,7 +50,7 @@
|
|||
|
||||
<!-- <button id="save-area-file" class="button" onclick="">Load Save</button> -->
|
||||
<button id="save-area-read" class="button" onclick="HKReadTextArea();">Analyze</button>
|
||||
<input id="save-area-file" class="" type="file" name="file" accept=".dat,.bak*" onchange="ShowFile(this)">
|
||||
<input id="save-area-file" class="" type="file" name="file" accept=".dat,.bak*" onchange="LoadSaveFile(this)">
|
||||
|
||||
<div class="checkboxes">
|
||||
<label for="checkbox-hints" class="checkbox-label" title="Check to see an optional clue for your first playthrough based on your save's progress.">
|
||||
|
|
|
|||
|
|
@ -1,15 +1,14 @@
|
|||
function ShowFile(input) {
|
||||
let inputFileObject = input.files[0];
|
||||
let reader = new FileReader().readAsArrayBuffer(inputFileObject);
|
||||
|
||||
|
||||
// alert(`File name: ${inputFileObject.name}`);
|
||||
// alert(`Last modified: ${inputFileObject.lastModified}`);
|
||||
alert(`File: ${inputFileObject}`);
|
||||
alert(`File name: ${inputFileObject.name}`);
|
||||
alert(`Last modified: ${inputFileObject.lastModified}`);
|
||||
}
|
||||
|
||||
// main input tag file function
|
||||
function LoadSaveFile(input) {
|
||||
// Prepares a File object from the first file of the input files for reading as an Array Buffer
|
||||
let inputFileObject = input.files[0];
|
||||
|
||||
// 1. read file
|
||||
// The ArrayBuffer object is used to represent a generic, fixed-length raw binary data buffer.
|
||||
|
|
@ -19,6 +18,20 @@ function LoadSaveFile(input) {
|
|||
// readAsArrayBuffer(file)
|
||||
// addEventListener("load", function) - to decode the file when loaded
|
||||
|
||||
let inputReader = new FileReader();
|
||||
inputReader.readAsArrayBuffer(inputFileObject);
|
||||
|
||||
inputReader.addEventListener("load", () => {
|
||||
let inputArrayBuffer = inputReader.result;
|
||||
|
||||
try {
|
||||
alert(`File: ${inputArrayBuffer}`);
|
||||
}
|
||||
catch (error) {
|
||||
alert(`The file cannot be decoded. Error: ${error}`);
|
||||
}
|
||||
});
|
||||
|
||||
// 2. Decode file
|
||||
// The slice() method copies up to, but not including, the byte indicated by the end parameter.
|
||||
|
||||
|
|
|
|||
Loading…
Reference in a new issue