Borrar filtros
Borrar filtros

Read multiple text files as separate matrices

2 visualizaciones (últimos 30 días)
fadzhi
fadzhi el 1 de Feb. de 2021
Comentada: Rik el 1 de Feb. de 2021
I have multiple text files and i want to import each of them as separate data (the number of text files is changing) I have taken some help from the previously asked question and written a small code but i am not being able to import any data. I have attached the text file and the code. I will really appreciate any help i this regard.
input_folder = 'T:New\files';
files = dir(fullfile(input_folder, '*.txt'));
file_paths = fullfile({files.folder}, {files.name});
for i = 1 : numel(file_paths)
format = '%f%f%f%f%f%f%f%f%f%f%f%f%f%f%f%f%f';
data = textscan(file_paths{i}, format,'headerlines', 7);
end

Respuesta aceptada

Rik
Rik el 1 de Feb. de 2021
The textscan function requires either an fid as input, or a character array. Your code doesn't actually read the data from the file, but from the file name.
It will also overwrite the variable data every file.
  2 comentarios
fadzhi
fadzhi el 1 de Feb. de 2021
Editada: fadzhi el 1 de Feb. de 2021
thanks.....working
clear all;
D = 'T:\New\files';
S = dir(fullfile(D, '*.txt'));
N = length(S);
A = cell(N,1);
fmt = '%f%f%f%f%f%f%f%f%f%f%f%f%f%f%f%f%f%f';
% fmt=repmat('%f',1,2);
for k = 1:N
fid = fopen(fullfile(D,S(k).name), 'r');
A(k)= textscan(fid, fmt, 'Delimiter', '\t', ...
'headerlines', 7, ...
'CollectOutput', 1);
fid=fclose(fid);
end
Rik
Rik el 1 de Feb. de 2021
Glad to be of help.
You should avoid clear all, and use clear or clearvars instead.

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre Data Import and Export 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!

Translated by