[Rd] iconv to UTF-16 encoding produces error due to embedded nulls (write.table with fileEncoding param)
nospam at altfeld-im.de
nospam at altfeld-im.de
Tue Feb 16 18:25:14 CET 2016
If I execute the code from the "?write.table" examples section
x <- data.frame(a = I("a \" quote"), b = pi)
# (ommited code)
write.csv(x, file = "foo.csv", fileEncoding = "UTF-16LE")
the resulting CSV file has a size of 6 bytes which is too short
(truncated):
""",3
The problem seems to be the iconv function:
iconv("foo", to="UTF-16")
produces
Error in iconv("foo", to = "UTF-16"):
embedded nul in string: '\xff\xfef\0o\0o\0'
In 2010 a (partial) patch for this problem was submitted:
http://tolstoy.newcastle.edu.au/R/e10/devel/10/06/0648.html
Are there chances to fix this problem since it prevents writing Windows
UTF-16LE text files?
PS: This problem can be reproduced on Windows and Linux.
---------------
> sessionInfo()
R version 3.2.3 (2015-12-10)
Platform: x86_64-pc-linux-gnu (64-bit)
Running under: Ubuntu 14.04.3 LTS
locale:
[1] LC_CTYPE=en_US.UTF-8 LC_NUMERIC=C
LC_TIME=en_US.UTF-8 LC_COLLATE=en_US.UTF-8
[5] LC_MONETARY=en_US.UTF-8 LC_MESSAGES=en_US.UTF-8
LC_PAPER=en_US.UTF-8 LC_NAME=C
[9] LC_ADDRESS=C LC_TELEPHONE=C
LC_MEASUREMENT=en_US.UTF-8 LC_IDENTIFICATION=C
attached base packages:
[1] stats graphics grDevices utils datasets methods
base
loaded via a namespace (and not attached):
[1] tools_3.2.3
>
More information about the R-devel
mailing list