Effacer les filtres
Effacer les filtres

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

15 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-

Catégories

En savoir plus sur Variables dans Help Center et File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by