how can i read values from text file?

Good morning everyone. New day and one more Question too. It is about again read from text files. I take datas from device as a text file. In first Picture you see that i defined Parameters as a structure which are in s Matrix. The next step that i should do is: under these Parameters there are too many value that each column belong to one Parameter. First question how can i read values from text file (be careful there are semicoluns too)and than after i read how can i connect this numbers with Parameters.
<<
>>

4 Comments

clear all
clc
delimiter=';' ; headerLines=4
formatSpec = '%s%s%s%s%s%s%s%d' daten=fopen('msa02_141121_mscc5_11.erg','r') %textread ('/Users/test.txt','%s', 'delimiter', '\n'); % zeile=textscan(datei,'%s\t',[1,inf]) zeile = textscan(daten,formatSpec,181,'delimiter',';','headerLines',4) fclose(daten);
for i=1:length(zeile{1,1}) tmp=zeile{1,1}{i} tmp=strrep(tmp,'.','_dot') zeile{1,1}(i)=cellstr(tmp); end
for ind=1:size(zeile{1,1},1)
%s.(zeile(i){ind})=magic(length(zeile{ind}))
s.(zeile{1,1}{ind})=magic(size(zeile{1,1}{ind},1))
end
and the values start from 230.th row
You use the format specifier '%s' to read numeric data: why not just convert this immediately to numeric using the '%f' specifier, as all of your data seems to be floating point values.

Sign in to comment.

 Accepted Answer

Stephen23
Stephen23 on 27 Jan 2015
Edited: Stephen23 on 27 Jan 2015
Do not do this. Dynamically assigning variable names is a really bad idea in MATLAB:
The best alternatives are to keep your data in an array (e.g. as they are returned from your file-reading function), or if you require key-value access to your data then use a structure . Structures do allow dynamic fieldnames , and this is much more robust than dynamic variables.
If you have a newer version of matlab you can also use a table , which stores the data together in one array but also allows key-name access to the columns.
Summary: use a structure or table to store your data.

More Answers (0)

Categories

Asked:

on 27 Jan 2015

Commented:

on 27 Jan 2015

Community Treasure Hunt

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

Start Hunting!