How can I access data from folders?

31 次查看(过去 30 天)
SM
SM 2020-7-13
Code
files = dir('H:\Project Two\Programming and DataSet');
% Get a list of all files and folders in this folder.
names = {files.name};
% Get a logical vector that tells which is a directory.
dirFlags = [files.isdir] & ~strcmp(names, '.') & ~strcmp(names, '..');
% Extract only those that are directories.
subDirsNames = names(dirFlags);
Output
subDirsNames =
1×2 cell array
{'Instance01'} {'Instance02'}
Now, Instance01 folder has two files which are costMatrix.dat and ProcessMatrix.dat. Silmilarly, Instance02 folder has two files which are costMatrix.dat and ProcessMatrix.dat. First, I want to access and work on Instance01 folder and once it is done, I want to access and work on the Instance02. How can I do that?

回答(1 个)

Walter Roberson
Walter Roberson 2020-7-13
files = dir('H:\Project Two\Programming and DataSet\*\*.dat');
names = fullfile( {files.folder}, {files.name} );
names will now be the fully-qualified names of .dat files, each with its appropriate folder name.
Note though that names will not be subdivided up into folders.
  4 个评论
SM
SM 2020-7-13
Instance01 and Instance02 contain similar types of data set but in different sizes. First I want to work on the data set of Instance01 to be optimized and store in another file. Once the Instance01 will be optimized, the Instance02 need to be accessed and optimized. So one folder will be accessed once.
Folder name could be sequential such as Instance1, Instance2, Instance3,.....,Instance20. So, sprintf('Instance%d', k) could be used. It forces to come sequentially I guess. What do you think?
Walter Roberson
Walter Roberson 2020-7-17
sprintf('Instance%d', k)
should work if you want folders such as Instance1 Instance2 . Your earlier used Instance01 Instance02 which would correspond to
sprintf('Instance%02d', k)

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 Startup and Shutdown 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by