Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

132
Vistas
Convertir archivos de entrada a byte [] javascript

Estoy trabajando en una aplicación web REST que administra documentos entre usuarios y cargadores. El backend está escrito en Java y mi entidad Documento contiene, además de varios atributos, un byte[] content . Pude enviar un archivo creado en el lado del servidor por

 @GET ... document.setContent(Files.readAllBytes(Paths.get("WEB-INF/testFile.txt"))); return Response.ok(document).build();

y recuperarlo en el front-end (vueJs) a través de

 async function download(file) { const fileURL = window.URL.createObjectURL(new Blob([atob(file.content)])); const fileLink = document.createElement("a"); fileLink.href = fileURL; fileLink.setAttribute("download",`${file.name}.${file.type}`); document.body.appendChild(fileLink); fileLink.click(); fileLink.remove; window.URL.revokeObjectURL(fileURL); }

el problema es que cuando trato de cargar un archivo y luego descargarlo, su contenido no se analiza correctamente (se muestra indefinido, cadena en Base64 o números, según cómo intente resolverlo). El archivo se envía mediante una solicitud posterior y se recupera a través de un formulario de entrada vinculado a una función onFileSelected .

 function onFileSelected(e) { var reader = new FileReader(); reader.readAsArrayBuffer(e.target.files[0]); reader.onloadend = (evt) => { if (evt.target.readyState === FileReader.DONE) { var arrayBuffer = evt.target.result; this.file.content = new Uint8Array(arrayBuffer); //this.file.content = arrayBuffer; } }; } axios.post(...,document,...)

y también he intentado usar atob y btoa antes de asignar el valor a this.file.content . Si imprimo el archivo en el servidor Welcome.txt da B@ae3b74d y si uso Arrays.toString(welcome.getContent()) da una matriz de números, pero tan pronto como pasa a la interfaz, su contenido se convierte en Base64 welcome: { ... content: IFRoaXMgaXMgYSB0ZXN0IGZpbGUhIAo...} . ¿Alguna idea? ¡Muchas gracias!

about 4 years ago · Juan Pablo Isaza
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda