Import alphanumeric data from .txt
3 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Hi,
I'm searching to extract datas from a .txt.
The txt. is an instrument output that give me something like this:
02062012025000 0R0,Hp=0.0M,Th=9.8C,Vh=0.0N,Vs=13.4V,Vr=3.484V,Id=Hel
02062012025100 0R0,Hp=0.0M,Th=10.0C,Vh=0.0N,Vs=13.4V,Vr=3.485V,Id=Hel
02062012025200 0R0,Hp=0.0M,Th=10.0C,Vh=0.0N,Vs=13.4V,Vr=3.485V,Id=Hel
02062012025300 0R0,Hp=0.0M,Th=10.6C,Vh=0.0N,Vs=13.4V,Vr=3.485V,Id=Hel
02062012025400 ,Hp=0.0M,Th=10.0C,Vh=0.0N,Vs=13.4V,Vr=3.485V,Id=Hel
02062012025500 Vs=13.4V,Vr=3.484V,Id=Hel
02062012025600 0R0,Hp=0.0M,Th=10.0C,Vh=0.0N,Vs=13.4V,Vr=3.485V,Id=Hel
02062012025700 9C,Hp=0.0M,Th=10.0C,Vh=0.0N,Vs=13.4V,Vr=3.484V,Id=Hel
02062012025800 0.0M,Th=10.1C,Vh=0.0N,Vs=13.4V,Vr=3.484V,Id=Hel
02062012025900 =Hel
02062012026000 p=0.0M,Th=10.8C,Vh=0.0N,Vs=13.5V,Vr=3.484V,Id=Hel
The first four lines complete.
The next lines contain errors.
I want to extract for each parameter (Time,Th,Vh,Vs,Vr) an array with his values at each line. Where there is no value Nan could be ok.
I tryed with readtext.m but without results.
Thank you
0 Kommentare
Akzeptierte Antwort
Pedro Villena
am 22 Okt. 2012
Bearbeitet: Pedro Villena
am 23 Okt. 2012
fid=fopen('test_data.txt');
str = textscan(fid,'%s %s\r',inf);
fclose(fid);
timeStr = cell2mat(str{1});
Time = str2num(timeStr(:,9:end)); %%last 5 digits
for i=1:length(str{1}),
dataStr = cell2mat(str{2}(i));
id = regexp(dataStr,{'Th=','Vh=','Vs=','Vr='});
for j=1:length(id),
if ~isempty(id{j}),
Data(i,j) = sscanf(dataStr(id{j}+3:end),'%f');
else
Data(i,j) = Data(i-1,j);
end
end
end
0 Kommentare
Weitere Antworten (1)
Siehe auch
Kategorien
Mehr zu Tables finden Sie in Help Center und File Exchange
Produkte
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!