I have a MATLAB application I have written on a Windows10 system which I will compile for Windows, Mac, and Unix. I am using the winopen function in my code which works in my Wondows10 platform. Will it compile OK for Windows use and will it also work for the Mac and Unix compilations?

Réponses (2)

Jonathan
Jonathan le 11 Fév 2021

1 vote

Eventually found an answer to this problem, with some help for MATLAB, which was to open a PDF document:
% Open the PDF in the system Adobe application
if (ispc)
winopen(pdfPath);
elseif ismac
cmdToExecute = ['open ' pdfPath];
[status, path] = system(cmdToExecute); %#ok<ASGLU>
else
% using xdg-open to open a file in Linux. Some Linux systems might not have
% xdg-open .In that case displaying as error with the file path
cmdToExecute = ['xdg-open ' pdfPath];
[status, path] = system(cmdToExecute); %#ok<ASGLU>
end
Steven Lord
Steven Lord le 20 Mai 2020

0 votes

winopen will throw an error on non-Windows platforms.

2 commentaires

Jan Prochazka
Jan Prochazka le 11 Fév 2021
Modifié(e) : Jan Prochazka le 11 Fév 2021
Is there alternative that will not throw an error but open the file?
Steven Lord
Steven Lord le 11 Fév 2021
It depends on the file format. If MATLAB knows how to open a specific file format you could use the open function. If MATLAB does not know how to open your specific file format you could extend the functionality of open by writing your own file handling function as described in the documentation page for the open function.
If like Jonathan you're trying to open a PDF that is one of the extensions listed in the description of the name input argument as being supported.

Connectez-vous pour commenter.

Catégories

En savoir plus sur Startup and Shutdown dans Centre d'aide et File Exchange

Produits

Version

R2019b

Question posée :

le 20 Mai 2020

Commenté :

le 11 Fév 2021

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by