如何将外部XML文件内容嵌入到RMD文档中
R Markdown嵌入外部XML文件方案
需求说明
需要将外部SOME.XML文件内容嵌入.Rmd文档,不直接粘贴XML内容到Rmd源码,也不新增rmarkdown::render调用前的预处理步骤。
已验证的无效方案
- 直接使用带
code参数的XML代码块:写法为````{xml code=readr::read_file('SOME.XML')}```,由于R Markdown无内置XML执行引擎,代码块运行失败。 - 搭配
results='asis'参数的R代码块输出:通过cat函数输出XML标记和文件内容,虽可完成编织,但输出格式不符合预期,无法保留XML代码高亮和原有格式。
最终可行方案
利用R Markdown行内代码可在代码块内渲染的特性,直接在XML标记的代码块中插入行内R代码读取文件即可,写法如下:
`r readr::read_file("SOME.XML")
注意事项
如果使用R基础函数readLines()读取文件,会抛出「SOME.XML存在不完整的最后一行」的警告,readr::read_file()会自动处理文件行尾问题,可避免该警告。
内容的提问来源于stack exchange,提问作者RMills330
相关产品推荐
相关产品推荐

