read .txt file data with data between specific lines "string" .

I want to read data between ( strings ) line starting from " *Node " and
ending at and next (strings ) line " *Element, type=C3D4" .

 Akzeptierte Antwort

Star Strider
Star Strider am 27 Jun. 2019
The textscan function using a numeric format descriptor string will automatically stop when it encounters:
*Element, type=C3D4
so this is actually a straightforward problem:
fidi = fopen('Copy_of_Job-1.txt','rt');
D = textscan(fidi, '%f%f%f%f', 'HeaderLines',9, 'Delimiter',',', 'CollectOutput',1);
fclose(fidi);
with ‘D’ being a (1418x4) double matrix.

7 Kommentare

With only two sections, and changing lines of text and changing format, your file needs specific and different textscan calls for the two sections:
fidi = fopen('Copy_of_Job-1.txt','rt');
D{1} = textscan(fidi, '%f%f%f%f', 'HeaderLines',9, 'Delimiter',',', 'CollectOutput',1);
txtline = fgets(fidi);
D{2} = textscan(fidi, '%f%f%f%f%f', 'Delimiter',',', 'CollectOutput',1);
fclose(fidi);
D1 = cell2mat(D{1}); % First Section
D2 = cell2mat(D{2}); % First Section
with ‘D1’ being a (1418 x 4) double, and ‘D2’ being a (6584 x 5) double.
Different files with different requirements would of course require different code.
jahanzaib ahmad
jahanzaib ahmad am 27 Jun. 2019
Bearbeitet: jahanzaib ahmad am 27 Jun. 2019
thankyou got it .but i want code to find the next string itself and read the data upto next string .
how can i find the line number with the matching strings ? e.g *nodes and **Element, type=C3D4
jahanzaib ahmad
jahanzaib ahmad am 27 Jun. 2019
Bearbeitet: jahanzaib ahmad am 27 Jun. 2019
the file format in my case remains constant with same strings .its abaqus .inp file . i want to read the data between strings and modify it .i changed it to .txt .
I am not certain what you are asking. I believe the code I posted in my Comment will do what you want.
If your file format remains the same, my code will work with all your files.
thankyou . i got it .. . ur code works perfectly
As always, my pleasure.
I appreciate your compliment.

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by