"save as" interface

4 visualizzazioni (ultimi 30 giorni)
Jakub Snopl
Jakub Snopl il 4 Nov 2021
Hi,
I trying to code in my MATLAB app a pop up "save as" interface, but it does not work and iam becoming desperate.
prompt = {'save as'};
dlgtitle = 'Input';
dims = [1 35];
definput = {'C:\myFolder\myFile.filename.txt'};
answer = inputdlg(prompt,dlgtitle,dims,definput);
path = string(answer);
hlavicka1 = '---------SOURADNICE BODU ORTODROMY---------';
hlavicka2 = 'c.b. U[D M S] V[D M S]';
fileID = fopen(path,'w');
fprintf(fileID,'%s\n',hlavicka1);
fprintf(fileID,'%s\n',hlavicka2);
...
Error call:
Error using fprintf
Invalid file identifier. Use fopen to generate a valid file identifier.

Risposta accettata

Steven Lord
Steven Lord il 4 Nov 2021
Why not just use the uiputfile function included as part of MATLAB?
  2 Commenti
Jakub Snopl
Jakub Snopl il 4 Nov 2021
because i did not know that this function exist :D, thank you
Walter Roberson
Walter Roberson il 4 Nov 2021
Either way, you should try to get accustomed to programming something along the lines of
[fileID, msg] = fopen(path, 'w');
if fileID < 0
error('Could not open file "%s" because "%s"', path, msg);
end
Even in cases where you are sure that the user returned something that looks like a valid file name in a valid directory, you can't be sure that the fopen() will work -- the disk might be out of space, the disk might be read-only, the user might not have write permission...

Accedi per commentare.

Più risposte (0)

Community Treasure Hunt

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

Start Hunting!

Translated by