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

258
Vistas
Convierta una matriz de bytes en un archivo ms word (.dotx) con Javascript

Estoy escribiendo una aplicación angular de interfaz, donde el usuario debería poder cargar archivos de plantilla de MS Word (.dotx) y luego descargarlos a pedido. Debido a las limitaciones de tamaño de los archivos, tengo que cargar archivos como una matriz de bytes y los archivos se almacenarán y descargarán en este formato. El enfoque, que se describe a continuación, funciona bien con archivos .txt; sin embargo, con archivos de MS Word no funciona. El archivo de MS Word descargado tiene problemas con la codificación y no se puede leer. Parte 1: Cargar el archivo que uso para obtener el archivo del usuario:

 <input type="file" class="file-input" (change)="onFileSelected($event)">

Lectura de archivo a matriz de bytes ("cargando archivo"):

 onFileSelected($event) { const file = $event.target.files[0] as File; const reader = new FileReader(); const fileByteArray = []; reader.readAsArrayBuffer(file); reader.onloadend = (evt) => { if (evt.target.readyState === FileReader.DONE) { const arrayBuffer = evt.target.result as ArrayBuffer; const array = new Uint8Array(arrayBuffer); for (const a of array) { fileByteArray.push(a); } this.byteArray = fileByteArray; } }; }

Descargando archivo:

 downloadFile() { const bytesView = new Uint8Array(this.byteArray); const str = new TextDecoder('windows-1252').decode(bytesView); //windows-1252 encoding used here for cirilic const file = new Blob([str], {type: 'application/vnd.openxmlformats-officedocument.wordprocessingml.template'}); saveAs(file, 'test.dotx'); }

No encontré problemas similares en Internet, supongo que no es una forma estándar de tratar con archivos. ¿Es posible procesar archivos de MS Word como una matriz de bytes con JS?
Otra pregunta importante: ¿es seguro cargar un archivo como una matriz de bytes, guardado en la base de datos?
Agradezco cualquier ayuda.

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