Spec-Zone.ru › Web APIs

API файлов

Примечание: Данная функция доступна в Веб-воркерах.

Основные понятия и использование

API файлов позволяет веб-приложениям получать доступ к файлам и их содержимому.

Веб-приложения могут получить доступ к файлам, когда пользователь предоставляет их, используя элемент ввода файла <input> или через перетаскивание.

Наборы файлов, предоставленные таким образом, представляются как объекты FileList, которые позволяют веб-приложению извлекать отдельные объекты File. В свою очередь, объекты File предоставляют доступ к метаданным, таким как имя файла, размер, тип и дата последнего изменения.

Объекты File могут передаваться объектам FileReader для доступа к содержимому файла. Интерфейс FileReader является асинхронным, но синхронная версия, доступная только в веб-воркерах, предоставляется интерфейсом FileReaderSync.

Интерфейсы

Blob

Представляет собой "Большой двоичный объект", то есть похожий на файл объект неизменяемых, исходных данных; объект Blob может быть прочитан как текст или двоичные данные, или преобразован в ReadableStream, чтобы его методы могли использоваться для обработки данных.

File

Предоставляет информацию о файле и позволяет JavaScript на веб-странице получить доступ к его содержимому.

FileList

Возвращается свойством files элемента HTML <input>; это позволяет получить доступ к списку выбранных файлов с помощью элемента <input type="file">. Также используется для списка файлов, перетащенных на веб-содержимое при использовании API перетаскивания; см. объект DataTransfer для подробностей об этом использовании.

FileReader

Позволяет веб-приложениям асинхронно читать содержимое файлов (или буферов исходных данных), хранящихся на компьютере пользователя, используя объекты File или Blob для указания файла или данных для чтения.

FileReaderSync

Позволяет веб-приложениям синхронно читать содержимое файлов (или буферов исходных данных), хранящихся на компьютере пользователя, используя объекты File или Blob для указания файла или данных для чтения.

Расширения других интерфейсов

URL.createObjectURL()

Создаёт URL, который может быть использован для получения объекта File или Blob.

URL.revokeObjectURL()

Освобождает существующий URL объекта, который был ранее создан вызовом URL.createObjectURL().

Примеры

Чтение файла

В этом примере мы предоставляем элемент ввода файла <input>, и когда пользователь выбирает файл, мы читаем содержимое первого выбранного файла в виде текста и отображаем результат в элементе <div>.

HTML

<input type="file" />
<div class="output"></div>

CSS

.output {
  overflow: scroll;
  margin: 1rem 0;
  height: 200px;
}

JavaScript

const fileInput = document.querySelector("input[type=file]");
const output = document.querySelector(".output");

fileInput.addEventListener("change", async () => {
  const [file] = fileInput.files;

  if (file) {
    output.innerText = await file.text();
  }
});

Результат

Спецификации

Спецификация
API файлов

См. также

  • <input type="file">: элемент ввода файла
  • Blob.text()
  • Интерфейс DataTransfer

© 2005–2024 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/File_API

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API