Chcę dać użytkownikowi dowolną opcję, którą chce edytować plik, jak mogę otworzyć plik z domyślnym programem określonego typu pliku? Potrzebuję go do pracy z systemami Windows i Linux, ale opcja Mac też byłaby świetna.otwórz plik z domyślnym programem w węźle-webkit
Odpowiedz
jak powiedział PSkocik, pierwszy wykryj platformę i uzyskaj wiersz poleceń:
function getCommandLine() {
switch (process.platform) {
case 'darwin' : return 'open';
case 'win32' : return 'start';
case 'win64' : return 'start';
default : return 'xdg-open';
}
}
drugie wykonanie wiersza poleceń następnie ścieżką
var sys = require('sys');
var exec = require('child_process').exec;
exec(getCommandLine() + ' ' + filePath);
Czy możemy uzyskać zamknięty sygnał? Czy jest połączenie, w którym wiedziałbym, że aplikacja została zamknięta? – django
Detect platformę i zastosowanie:
- 'Start' w systemie Windows
- 'otwarty' na Mac
- 'xdg-open' na Linux
Dla pliku na dysku:
var nwGui = require('nw.gui');
nwGui.Shell.openItem("/path/to/my/file");
Dla zdalnych plików (np strony):
var nwGui = require('nw.gui');
nwGui.Shell.openExternal("http://google.com/");
nie jestem pewien, czy start był używany tak, jak w poprzednich wersjach systemu Windows, jednak w systemie Windows 10 nie działa tak, jak wskazano w odpowiedzi. Pierwszym argumentem jest tytuł okna.
Ponadto zachowanie między oknami i linuxem jest inne. Windows "start" uruchomi się i wyjdzie, pod linux, xdg-open będzie czekać.
Była to funkcja, która ostatecznie pracował dla mnie na obu platformach w podobny sposób:
function getCommandLine() {
switch(process.platform) {
case 'darwin' :
return 'open';
default:
return 'xdg-open';
}
}
function openFileWithDefaultApp(file) {
/^win/.test(process.platform) ?
require("child_process").exec('start "" "' + file + '"') :
require("child_process").spawn(getCommandLine(), [file],
{detached: true, stdio: 'ignore'}).unref();
}
- 1. Jak otworzyć plik z domyślnym programem powiązanym?
- 2. Otwórz plik w domyślnym edytorze z bashu
- 3. Jak otworzyć plik z wiersza poleceń z określonym programem?
- 4. Otwórz (plik) z dowolnego miejsca
- 5. Otwórz plik z powiązaną aplikacją
- 6. Otwórz symulator iOS iPad z domyślnym React Native
- 7. Jak sprawdzić, czy moja aplikacja jest domyślnym programem uruchamiającym?
- 8. Otwórz plik w aplikacji Django
- 9. Otwórz plik w innej aplikacji
- 10. Otwórz plik PDF z aplikacji WinJS
- 11. Otwórz i edytuj plik .jar z Javą?
- 12. Otwórz plik do edycji z kodem
- 13. Otwórz plik z su/sudo wewnątrz Emacs
- 14. Otwórz plik GUI z innego pliku pyqt
- 15. Otwórz plik CSV i skopiuj
- 16. python otwórz zserializowany plik C#
- 17. Automatycznie otwórz plik jako plik binarny z Ruby
- 18. Otwórz plik pod kursorem w podzielonym oknie
- 19. Otwórz plik tylko do odczytu
- 20. Otwórz i odczytać plik txt w ASP
- 21. Programowo otwórz plik w Visual Studio (2010)
- 22. Otwórz plik pdf w widoku internetowym.
- 23. Pobierz plik, otwórz nową kartę w przeglądarce
- 24. Otwórz plik skryptu w edytorze Rstudio, używając kodu zamiast "Plik/Otwórz"
- 25. PHPStorm/Webstorm, jak otworzyć plik z powiązanym programem
- 26. Android: Otwórz zapisany plik w domyślnej aplikacji z mojej aplikacji
- 27. Skojarzenie rozszerzeń plików z programem
- 28. Otwórz plik z okna dialogowego pliku z pythonem automatycznie
- 29. Otwórz plik Worda WebDAV na OSX
- 30. Przykład standardowych okien dialogowych Qt: Otwórz plik
można powiedzieć coś więcej? twoje pytanie nie jest tak jasne – Khalid
Mam ścieżkę do pliku, chcę go otworzyć z domyślnym programem – InvisibleUn1corn