Is fullfile(0,0) undocumented behavior or bug?
2 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
Naor Movshovitz
el 18 de Abr. de 2017
Comentada: Walter Roberson
el 19 de Abr. de 2017
What is the purpose, if any, of non-char inputs to fullfile?
>> fullfile(0)
> In fullfile>refinePath (line 93)
In fullfile (line 38)
Warning: Inputs must be character arrays or cell arrays of strings.
ans =
0
>> fullfile(0,0)
ans =
\
>> fullfile(0,0,0)
ans =
\ \
>> fullfile(0,0,0,0)
ans =
\ \ \
etc. This is the behavior in R2014b and R2016b on Windows 7 (only versions I tested).
0 comentarios
Respuesta aceptada
Jan
el 18 de Abr. de 2017
Editada: Jan
el 18 de Abr. de 2017
This is a bug. fullfile should contain a test, if all inputs are strings or character vectors. This happens for 1 input directly, but for multiple inputs, file sepearators are appended at first such that the elements are converted to character vectors implicitely.
I assume the warning is not correct also, but only a hard error is sufficient to stop the user driving fullfile beyond its purpose.
3 comentarios
Jan
el 18 de Abr. de 2017
uigetfile should be accompanied by a check of a abortion under all circumstances:
[fname, pname] = uigetfile;
if isequal(fname,0) || isequal(pname,0)
disp('User pressed cancel')
...
Omitting this test would be a crude programming style.
Más respuestas (0)
Ver también
Categorías
Más información sobre File Name Construction en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!