FileReader.readAsDataURL()

Метод readAsDataURL используется для чтения содержимого указанного Blob или File.Когда операция закончится, readyState (en-US) примет значение DONE, и будет вызвано событие loadend (en-US). В то же время, атрибут result (en-US) будет содержать данные как URL, представляющий файл, кодированый в base64 строку.

Синтаксис

instanceOfFileReader.readAsDataURL(blob);

Параметры

blob

Blob илиFile которые следует прочитать.

Пример

HTML

html

<input type="file" onchange="previewFile()" /><br />
<img src="" height="200" alt="Image preview..." />

JavaScript

js

function previewFile() {
  var preview = document.querySelector("img");
  var file = document.querySelector("input[type=file]").files[0];
  var reader = new FileReader();

  reader.onloadend = function () {
    preview.src = reader.result;
  };

  if (file) {
    reader.readAsDataURL(file);
  } else {
    preview.src = "";
  }
}

Результат

Примечание: FileReader() конструктор не поддерживается Internet Explorer до 10 версии. Для полностью совместимого решения прочтите crossbrowser possible solution for image preview. Смотрите также this more powerful example.

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

Specification
File API
# readAsDataURL

Совместимость с браузерами

BCD tables only load in the browser

Смотрите также