微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何在Windows上使用Unix结尾的文件写入文件

我有一个R脚本在 Windows上创建一个文本文件.

我使用write.table和write函数来写入文件.

那么我需要在Unix系统上使用这个文件,但文件有Windows的行尾字符(^ M).

是否可以在Windows上使用具有Unix行尾字符的R写入文件

编辑

这是一个可重现的例子:

output.file <- file.path("./test.txt")

x <- c(1,2,3,4)
y <- c(5,6,7,8)
my.df <- data.frame(x,y)
my.df[] <- lapply(my.df,sprintf,fmt = "%14.7E")

write("First line",file = output.file)
write("Second line",file = output.file,append = TRUE)
write.table(my.df,row.names = FALSE,col.names = FALSE,quote = FALSE,append = TRUE,sep = "")

结果,如NotePad所见:

如help(write.table)所示:

To write a Unix-style file on Windows,use a binary connection e.g.
file = file(“filename”,“wb”).

在您的示例中,只需更改第一行即可打开“wb”连接并关闭文件

output.file <- file("./test.txt","wb")

x <- c(1,sep = "")

close(output.file)

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐