如何以独立于操作系统的方式从R打开本地html文件?

时间:2012-06-10 13:17:40

标签: r

如何以独立于操作系统的方式从R打开本地html文件?

出于演示目的,假设该文件名为test.html并且位于工作目录中。

初步想法

  • system('gnome-open test.html')
    • 这适用于Ubuntu
  • browseURL(paste('file://', getwd(),'test.html', sep='/'))
    • 这适用于Ubuntu,但感觉有点像黑客,我不确定它是否适用于Windows。

3 个答案:

答案 0 :(得分:5)

您可能会发现我的open.file.in.OS功能很有用,可以找到来源here

关于此功能的简短摘要:

  1. 检查平台
  2. 基于平台,致电:
      Windows上的
    • shell.exec
    • open在Mac上使用system
    • 其他类Unix操作系统上的
    • xdg-open system
  3. 在私有文件
  4. 上使用shQuote

    更新:现在查看openFileInOS包中的pander

    引用:此函数是David Hajage的分叉版本,convert函数可以找到here

答案 1 :(得分:1)

我只是想将@daroczig提供的回答从评论中拉出来并回答。如果@darcozig想将此作为单独的答案发布,我将删除此副本。

openHTML <- function(x) browseURL(paste0('file://', file.path(getwd(), x)))

答案 2 :(得分:0)

使用file.path功能构建文件路径。

 file.path(..., fsep = .Platform$file.sep)


 ...: character vectors.

fsep: the path separator to use.

默认情况下,它将使用当前的os路径分隔符。

例如

> file.path ("", "home", "phoxis", "paragraph")
[1] "/home/phoxis/paragraph"

这会生成我的文件“/ home / phoxis / paragraph”

注意开头的空白字符串“”。这迫使在我的情况下添加额外的“/”来生成绝对路径。根据需要调整以生成绝对路径或相对路径,并查看?file.path

我认为这将满足您的需求