How can open and read .dat file?
Show older comments
A=[3 4 4 NaN NaN NaN NaN NaN;
36 46 4 4 1 3 NaN NaN;
24 32 3 3 1 3 2 3;
25 32 3 3 1 3 2 NaN];
I have stored this matrix as a .dat file using following code:
filename = sprintf('output.dat');
dlmwrite(filename, A, ' ' );
Now I want to open (fopen) this "output.dat" file in read mode and want to read data from this open file using fscanf. How can I do that?
any help would be greatly appreciated.
Thank you!
Answers (1)
Walter Roberson
on 8 Sep 2020
result = load('output.dat');
4 Comments
SM
on 9 Sep 2020
Walter Roberson
on 9 Sep 2020
You cannot solve the problem using fscanf() unless you already know the number of columns in advance.
You can solve the problem by looking with fgets() or fgetl() to pull in one line at a time, and sscanf() that line, and check the lines for consistency of lengths.
You can also solve the problem with dlmread() or with textscan(). If you use textscan then you can pass in '' (empty string) as the format, which is an undocumented option that will figure out how many columns there are for numeric use.
You can also use readmatrix() for R2019b or later.
Huy Le Van
on 4 Nov 2020
Edited: Rik
on 4 Nov 2020
I can not read file.dat.
Do you replay follow email []@gamil.com
Walter Roberson
on 4 Nov 2020
dat is not a fixed file format. It is used by many different programs for whatever data they have handy. You would need to know which program created the file to try to figure out what the file format is.
Categories
Find more on Large Files and Big Data in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!