【发布时间】:2016-01-27 06:31:36
【问题描述】:
如何在给定位置修改带有 R 的文本文件?
它不是表格,而是任何文件,例如 xml 文件。
例如,将第 7 列(到第 10 列)的第 122 行的内容替换为变量的内容,即“3.14”。
并更新文件。
想象那条线是
<name=0.32>
现在应该是
<name=3.14>
或者另一种选择,也许更容易。 查找所有出现的“Variable=”并更改接下来的 4 个字符。
【问题讨论】:
如何在给定位置修改带有 R 的文本文件?
它不是表格,而是任何文件,例如 xml 文件。
例如,将第 7 列(到第 10 列)的第 122 行的内容替换为变量的内容,即“3.14”。
并更新文件。
想象那条线是
<name=0.32>
现在应该是
<name=3.14>
或者另一种选择,也许更容易。 查找所有出现的“Variable=”并更改接下来的 4 个字符。
【问题讨论】:
您必须读入整个文件,然后使用字符串操作。例如,
f <- "file.xml"
x <- readLines(f)
x[122] <- paste0(substring(x[122], 1, 8), "3.14", substring(x[122], 13, nchar(x[122])))
writeLines(x, f)
我认为有一个更适合此的命令行工具。
【讨论】:
system() 是你想要的,或者shell()。
wait 参数控制。如果将其设置为 FALSE,R 将不会等待。如果为 TRUE,它将等待外部命令完成后再继续。