How to use textscan to read this .dat file?

조회 수: 2 (최근 30일)
Hsinho
Hsinho 2015년 5월 17일
편집: Stephen23 2015년 5월 17일
Hi,
I fail to use textscan to read the following formatted data. What should be the correct argument to read it and let the same data type be in a single array? Thanks!
{"time":1431653957, "OD":0.0010, "Z":0.0000, "U":0}
{"time":1431654017, "OD":0.0007, "Z":0.0000, "U":0}
{"time":1431654077, "OD":-0.0005, "Z":0.0000, "U":0}
{"time":1431654137, "OD":-0.0015, "Z":0.0000, "U":0}
  댓글 수: 3
Hsinho
Hsinho 2015년 5월 17일
Hi
I want to read another more complicated formatted data.
It looks like
{"timestamp": 1431654053, "ods": [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], "u": [7, 7, 7, 7, 7, 7, 7, 7], "z": ["0.0000", "0.0000", "0.0000", "0.0000", "0.0000", "0.0000", "0.0000", "0.0000"]}
I fail again to have a correct argument of textscan. The original data file is uploaded.
Stephen23
Stephen23 2015년 5월 17일
편집: Stephen23 2015년 5월 17일
Indeed this is a much more complicated file format. Some more information would help:
  • is the number of elements in the vectors constant?
  • should numeric values with quotation marks be imported as strings?
  • what is the desired output format?

댓글을 달려면 로그인하십시오.

채택된 답변

Stephen23
Stephen23 2015년 5월 17일
편집: Stephen23 2015년 5월 17일
It is not clear exactly how this file is formatted, as the text on the page is not a good way to represent files. Please upload the actual data file.
Based on the text in the question I created a small data file (attached), and then a small script containing this code:
fmt = ['{',repmat('%*s%f',1,4),'}'];
fid = fopen('temp.txt','rt');
A = cell2mat(textscan(fid,fmt,'Delimiter',':,'));
fclose(fid);
Which reads all of the numeric data correctly:
>> A
A =
1.4317e+009 0.001 0 0
1.4317e+009 0.0007 0 0
1.4317e+009 -0.0005 0 0
1.4317e+009 -0.0015 0 0
  댓글 수: 1
Hsinho
Hsinho 2015년 5월 17일
Thank you very much! The data is a .dat file and its content looks exactly what has been paste but with more lines in the same format.
Your answer has solved my question. :-)

댓글을 달려면 로그인하십시오.

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 Data Import and Export에 대해 자세히 알아보기

태그

제품

Community Treasure Hunt

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

Start Hunting!

Translated by