How I can to get the name of a file.mat when i load it?

22 vues (au cours des 30 derniers jours)
Abel Romero
Abel Romero le 4 Jan 2018
Commenté : Steven Lord le 22 Oct 2022
Hello, i want to get the name of a file.mat when i load it. For example, I load 'Resonator.mat', how i can to get the string 'Resonator' when i load it?
I know how to load a .mat file and how to save it, but i need the get the name because i want to overwrite the variables of the .mat and save with the same name(i have a lot of .mat and i can't fix the name).

Réponse acceptée

Vishwas Kumar
Vishwas Kumar le 9 Jan 2018
You can use something like uigetfile
fileName = uigetfile('*.mat');
load(fileName)
filename = filename(1:end-4)
Or alternatively, you can do some batch processing doing something like:
dirinf = dir('*.mat');
nfiles = length(dirinf);
for n = 1:nfiles
infile = dirinf(n).name; % extract one file name from struct
load(infile) % load the data
infile = infile(1:end-4);
end
  2 commentaires
ELLER JUCO
ELLER JUCO le 22 Oct 2022
how do you find the size from the fileName?
m=size(fileName) - does not work
Steven Lord
Steven Lord le 22 Oct 2022
Find the size of what from the file name?
The size of the file on disk? Use dir.
locationOfCensusMat = which('census.mat')
locationOfCensusMat = '/MATLAB/toolbox/matlab/demos/census.mat'
D = dir(locationOfCensusMat)
D = struct with fields:
name: 'census.mat' folder: '/MATLAB/toolbox/matlab/demos' date: '14-Mar-2004 15:32:00' bytes: 353 isdir: 0 datenum: 7.3202e+05
The sizes of the variables in the file? Use whos.
W = whos('-file', locationOfCensusMat)
W = 2×1 struct array with fields:
name size bytes class global sparse complex nesting persistent
W(1)
ans = struct with fields:
name: 'cdate' size: [21 1] bytes: 168 class: 'double' global: 0 sparse: 0 complex: 0 nesting: [1×1 struct] persistent: 0

Connectez-vous pour commenter.

Plus de réponses (1)

Abel Romero
Abel Romero le 13 Jan 2018
Thank you for your help, it was what i needed-

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by