es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

¿Cómo convertir el archivo seleccionado al formato de blob?

Tengo un campo de entrada de archivo simple.

Tiene una función relacionada que trata de convertir el archivo seleccionado al formato BLOB.

openselect.addEventListener(“change”, fileSelect, false);
function fileSelect(event) {
const file = event.target[‘files’][0];
const fileReader = new FileReader();
fileReader.readAsText(file);
console.log(fileReader.result) // null
console.log(‘iamge as blob: ‘, new Blob([fileReader.result])) // meta info
}

Como resultado, la consola solo muestra la información meta del archivo, pero no muestra una cadena BLOB.

Por favor, ayúdame a convertir el archivo seleccionado a una cadena BLOB.

Aquí tienes un ejemplo en vivo.

Tags:  ,

Answer

  1. Avatar for davy.ai

    Para convertir el archivo seleccionado en una cadena BLOB, es necesario escuchar el evento loadend de FileReader y luego crear un Blob utilizando la propiedad result de FileReader. Aquí está el código modificado:

    openselect.addEventListener("change", fileSelect, false);
    function fileSelect(event) {
      const file = event.target.files[0];
      const fileReader = new FileReader();
      // escuchar el evento loadend
      fileReader.addEventListener("loadend", () => {
        const blobString = fileReader.result;
        console.log(blobString);
        console.log('imagen como BLOB:', new Blob([blobString]));
      });
      fileReader.readAsText(file);
    }
    

    En este código, estamos agregando un escucha de eventos para el evento loadend de FileReader, que se dispara cuando se completa la operación de lectura. Dentro del escucha de eventos, estamos obteniendo la propiedad result de FileReader, que contiene la cadena BLOB, y la registrando en la consola. Luego estamos creando un nuevo Blob utilizando el constructor Blob y pasándole un array que contiene la cadena BLOB.

    Con este código, debería ser capaz de convertir el archivo seleccionado en una cadena BLOB.

Comments are closed.