does winopen work on Unix platforms

7 次查看(过去 30 天)
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?

回答(2 个)

Jonathan
Jonathan 2021-2-11
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 2020-5-20
winopen will throw an error on non-Windows platforms.
  2 个评论
Jan Prochazka
Jan Prochazka 2021-2-11
编辑:Jan Prochazka 2021-2-11
Is there alternative that will not throw an error but open the file?
Steven Lord
Steven Lord 2021-2-11
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.

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 Adding custom doc 的更多信息

产品


版本

R2019b

Community Treasure Hunt

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

Start Hunting!

Translated by