node.js - parse - ¿Cómo puedo leer un archivo codificado en utf-16 en nodejs?
nodejs buffer to string utf8 (2)
Tengo que leer un archivo codificado en UTF-16 usando nodejs (en trozos porque es muy grande). Los datos del archivo irán a un mongodb, así que tendré que convertirlos en utf-8. Desde Google, parece que esto simplemente no está soportado por Node, y yo mismo tendré que recurrir a convertir los datos en bruto de un búfer. Pero también creo que debería haber una mejor manera y simplemente no la encuentro. ¿Alguna sugerencia?
Gracias.
El nodo es compatible con UCS-2, el subconjunto UTF-16 compatible con JavaScript. Intenta usar eso.
Ver esta solicitud de extracción .
Reemplace el utf8
normal que tendría al leer un archivo de texto con utf16le
o ucs2
:
var fileContents = fs.readFileSync(''import.csv'',''utf16le'')
o:
var fileContents = fs.readFileSync(''import.csv'',''ucs2'')
Además, para Google: cualquier persona que obtenga caracteres (signo de interrogación) adicionales en un archivo analizado, probablemente sea la causa de su problema. Lea el archivo como UTF16 / UCS2 y los caracteres adicionales desaparecerán.