How to take a data form text file to put it in another file?

4 views (last 30 days)

Hi,
I have a text file called File.1.node which contain such as:
45 12 7 1 ( first line )
1 2 1 1
2 3 2 1
3 4 5 1
.....
% File.1.node is complete (last line )

I want to take the data from File.1.node without first line and last line, to put it in another file named Node.dat.
But How i write a code for this problem?
Thanks in advance.

Accepted Answer

Star Strider
Star Strider on 3 Feb 2022
Try this —
fidi = fopen('File.1.node','rt');
F1c = textscan(fidi, '%f%f%f%f', 'HeaderLines',1, 'CollectOutput',1);
fclose(fidi);
F1 = cell2mat(F1c);
dlmwrite(F1, 'Node.dat')
.
  4 Comments
Star Strider
Star Strider on 4 Feb 2022
@Stephen — Thank you.
The other answer was originally accepted, and I deleted my original (correct) answer as the result. I got an e-mail requesting that I re-post it so that it could be accepted. I did it from memory, and did not remember the correct argument order to dlmwrite (correct in my original answer) because I rarely used it even before writematrix appeared. (My original answer used readmatrix and writematrix, however A Achbak does not have access to them. The dlmwrite call appeared in a subsequent Comment.)
Yamina chbak
Yamina chbak on 4 Feb 2022
Yes, I understand that now, well when I used dlmwrite (filename must be come first), it gives me a data but not form a matrix ( it was like : 1,2,1,1 2,3,2,1 .... ) So I prefer use @Stephen's code (removing the loop and the superfluous square brackets). Thanks you @Stephen.

Sign in to comment.

More Answers (1)

David Hill
David Hill on 3 Feb 2022
See what readmatrix gives you
m=readmatrix('File.1.node.txt');
m(1,:)=[];
writematrix(m,'Node.dat');
If you do not attach the file, we cannot test.
  5 Comments
David Hill
David Hill on 3 Feb 2022
Edited: David Hill on 3 Feb 2022
What about this?
m=dlmread('File.1.node',' ',[1 0 592 3]);
Yamina chbak
Yamina chbak on 3 Feb 2022
Edited: Yamina chbak on 4 Feb 2022
Yes It's working now ! it can read the first raw. Thanks you so much @David Hill.
But, i just checked that it gives me a wrong data, so i just say myself maybe my text file is not organize to know where is the raw and the colone o the matrix.
Thanks you again @David Hill.

Sign in to comment.

Categories

Find more on Data Import and Export in Help Center and File Exchange

Products


Release

R2018b

Community Treasure Hunt

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

Start Hunting!