File - об'єкт який містить інформацію про файл.
f = new File(bits, name, options);
f - змінна якій присвоюється об'єкт File.
bits - дані файлу, можливі об'єкти: Array, ArrayBuffer, TypedArray, DataView, Blob, File.
name - рядок який містить назву файла.
options - не обов'язково вказувати. Додаткові параметри:
File об'єкт який містить інформацію про файл і дозволяє JavaScript отримувати доступ до вмісту файлу.
В основному об'єкт File отримується з FileList об'єкта, який повертається в результаті вибору користувачем файлів за допомогою елемента <input type="file">, або з об'єкта при перетягувані DataTransfer.
Об'єкт File застововується для FileReader, URL.createObjectURL(), createImageBitmap(), XMLHttpRequest.send().
Об’єкт File є певним видом Blob.
var file= new File(['текст'], 'text.txt', {type:'text/plain'});
alert(file);
Приклад отримання інформації про файл:
<input id="fileTest" type="file">
fileTest.onchange=function(){
var f=this.files[0];
alert('name: "'+f.name+'", size: '+f.size+'b, type: "'+f.type+'", date:'+Date(f.lastModified)+', path:"'+f.webkitRelativePath+'"');
}
Відкривання файлу зображення за допомогою метода FileReader.readAsDataURL():
<input type="file" id="fileImage" accept="image/*">
<img id="picture" style="max-width:100%">
fileImage.onchange=function(){
var read=new FileReader();
read.onload=function(){
picture.src=this.result;
}
file=fileImage.files[0]; //this.files[0];
read.readAsDataURL(file);
}
Відкривання текстового файлу за допомогою FileReader.readAsText():
<input type="file" id="fileInput">
<textarea id="text" style="width:100%;height:150px;"></textarea>
document.getElementById("fileInput").onchange=function(){
var read= new FileReader();
read.onload=function(){
document.getElementById("text").value=this.result;
};
read.readAsText(this.files[0]);
}