Tengo problemas para generar un data.frame utilizando write.csv
usando la codificación de caracteres UTF-16.R write.csv con codificación UTF-16
Antecedentes: Estoy tratando de escribir un archivo CSV a partir de un data.frame para su uso en Excel. A Excel Mac 2011 parece no gustarle UTF-8 (si especifico UTF-8 durante la importación de texto, los caracteres que no son ASCII aparecen como guiones bajos). Me han hecho creer que Excel estará contento con la codificación UTF-16LE.
Aquí está el ejemplo hoja.de.datos:
> foo
a b
1 á 羽
> Encoding(levels(foo$a))
[1] "UTF-8"
> Encoding(levels(foo$b))
[1] "UTF-8"
así que traté de salida de la hoja.de.datos haciendo:
f <- file("foo.csv", encoding="UTF-16LE")
write.csv(foo, f)
Esto me da un archivo ASCII que se parece a:
"","
Si uso encoding="UTF-16"
, obtengo un archivo que solo contiene la marca de orden de bytes 0xFE 0xFF
.
Si uso encoding="UTF-16BE"
, obtengo un archivo vacío.
Esto está en una versión de 64 bits de R 2.12.2 en Mac OS X 10.6.6. ¿Qué estoy haciendo mal?
Para el registro, WTF está mal con Excel y UTF-8? Quiero decir, vamos, es 2011. –