为什么不能将可打印的ascii写入R中的文件?

时间:2013-12-11 07:13:24

标签: r

从十进制数的32到255,ascii是可打印字符,我想将它们写入文件c:/asciitest

for(i in 32:255){
    rawToChar(as.raw(i))->x;
    cat("the ",i," ",x,"\n");
    #you can try in R console with `cat("the ",i," ,x,"\n");`
    }

为什么我只得到其中的一部分?包含?字符的行是:
32,34,127,表格129到255,我怎样才能使它们可读?

1 个答案:

答案 0 :(得分:2)

those and more between 32 and 127 are non-printable

  • 32:SPACE
  • 34:不可打印
  • 127:DEL

从128到255你引入了第二个字节来描述这个字符。这与您的字符编码设置冲突。只有0到127的ANSI部分与UTF-N兼容。

此外,您可能必须在写入控制台和默认编码的文件或选项(encoding =“...”)时调整fileEncoding-attribute。否则任何编码长于单个字节(ANSI)的字符都可能被错误地解释。