How do i extract values from a name-value pair argument?

1 view (last 30 days)
Can someone help me on this please. my function is this; fid=fopen('20160613.XVI'); C=textscan(fid,'%s%s','CollectOutput',true,'Delimiter',';'); data=C{1}(71:73,1); [~]=fclose(fid);
It returns the following; {'CouchShiftLat=-0.17' } {'CouchShiftLong=-0.08' } {'CouchShiftHeight=-0.09'} But i needed only the values; -0.17,-0.08 and -0.09.
  3 Comments
AUWAL ABUBAKAR
AUWAL ABUBAKAR on 2 Apr 2018
I am now able to read the values i wanted using the function below:
fid=fopen('20160613.txt');
C=textscan(fid,'%s%s','CollectOutput',true,'Delimiter',';=');
celldata=C{1}(73:75,2);
data=str2double(celldata)
[~]=fclose(fid);
My next task now is to read this from multiple files(1,2...n). Attached here is a sample of my data file.
many thanks

Sign in to comment.

Accepted Answer

KSSV
KSSV on 2 Apr 2018
files = dir('*.txt') ; % Get all text files of the folder
N = length(files) ; % Total files
% loop for each file
for i = 1:N
file = files(i).name ;
% do what you want
end
  3 Comments
Stephen23
Stephen23 on 2 Apr 2018
Edited: Stephen23 on 2 Apr 2018
"the 'name' meaning the name of the folder or the files in the folder?"
dir returns a structure. One of the fields of that structure is called name: it contains the names of the files/folders. Read more here:
Note that it is good habit to avoid length entirely, and only numel and size.

Sign in to comment.

More Answers (0)

Community Treasure Hunt

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

Start Hunting!