Откройте локальный файл HTML в веб-браузере по умолчанию - PullRequest
3 голосов
/ 01 апреля 2011

Есть ли в Ruby какой-либо способ открыть локальный файл HTML в веб-браузере пользователя по умолчанию?Я мог бы сделать что-то вроде:

system("open /path/to/file.html")

Но это будет работать только на Mac OS X. Существуют ли решения, которые работают на любой платформе?

Ответы [ 3 ]

9 голосов
/ 01 апреля 2011

Вы можете использовать launchy gem.

Сначала установите gem:

$ [sudo] gem install launchy

Затем в своем коде ruby:

require 'rubygems'
require 'launchy'

Launchy::Browser.run("/path/to/file.html")
0 голосов
/ 01 апреля 2011

Я знаю, что это нежелательно, однако в худшем случае вы можете проверить значение RUBY_PLATFORM.Это возвращает платформу операционной системы.

Полупсевдокод:

cmd = case RUBY_PLATFORM
  when /darwin/
    "open /path/to/file.html"
  when /windows/ #fix this, I'm not sure.
    "explorer file:///C:/path_to_file"
  else
    "default"
end

system(cmd)
0 голосов
/ 01 апреля 2011

Я думаю, вам придется делать системные звонки.

system () походит на написание команды в командной строке локальной системы (в любом случае это мое понимание)

Я не могу сделать то, что вы сделали в Windows 7. Мне нужно вызвать проводник, и он открывается в моем браузере по умолчанию.

Пример Windows 7: (открывается в Chrome, браузере по умолчанию)

system("explorer file:///C:/path_to_file")

Примечание: Мне нужно было поместить file: /// в начало, иначе оно открывается в проводнике вместо браузера.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...