How to read part of folder

3 visualizaciones (últimos 30 días)
DuckDuck
DuckDuck el 12 de Dic. de 2014
Editada: Guillaume el 12 de Dic. de 2014
I have my data saved into folders based on time of creation. the structure is like this:
folder: 05_dec._2014_08-15-03.331_GMT+00-00
files: OneName_05_dec._2014_08-15-03.331_GMT+00-00.txt
AnotherName_05_dec._2014_08-15-03.331_GMT+00-00.txt
JetAnotherName_05_dec._2014_08-15-03.331_GMT+00-00.txt
How can i do so that every time i add a folder, i'll need to only give the folder name and it will read file names based on some schema.
for example
First = csvread('OneName_whatever_folder_name.txt')
Second = csvread('AnotherName_whatever_folder_name.txt');

Respuestas (2)

Orion
Orion el 12 de Dic. de 2014
you can use fullfile
Folder = 'C:\users\....\05_dec._2014_08-15-03.331_GMT+00-00'; % put your own folder path
File = 'OneName_whatever_folder_name.txt';
csvread(fullfile(Folder,File))
  1 comentario
DuckDuck
DuckDuck el 12 de Dic. de 2014
I want to eleminate writing the file name every time i need to access a folder with files. Because each folder has the same nr of files but they differ from timestamp in their name.

Iniciar sesión para comentar.


Guillaume
Guillaume el 12 de Dic. de 2014
Editada: Guillaume el 12 de Dic. de 2014
How about:
foldername = 'whatever'; %adjust to folder name, your input.
basepath = 'C:\somewhere\ondisk'; %adjust as required. A constant.
filesinfolder = dir(fullfile(basepath, foldername, sprintf('*_%s.txt', foldername)));
filecontent = cell(numel(filesinfolder), 1);
for filecount = 1 : numel(filesinfolder)
filecontent{filecount} = csvread(fullfile(basepath, foldername, filesinfolder(filecount).name));
end
  2 comentarios
DuckDuck
DuckDuck el 12 de Dic. de 2014
I get empty filesinfolder and filescontent!!!
Guillaume
Guillaume el 12 de Dic. de 2014
Editada: Guillaume el 12 de Dic. de 2014
I've not understood your pattern then, I thought the file names were just the folder name preceded by something and an underline _ and followed by .txt. If that's not the case, then yes, filesinfolder will be empty.
What does the following outputs?
d = dir(fullfile(basepath, foldername));
fullfile(foldername, {d.name}')

Iniciar sesión para comentar.

Categorías

Más información sobre String Parsing en Help Center y File Exchange.

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by