ARRANGING TEXT FILE?

1 view (last 30 days)
AHMET TATAR
AHMET TATAR on 8 Oct 2017
Commented: Cedric on 8 Oct 2017
Hi,
I am working on a dynamic analysis. I am trying to run ANSYS on MATLAB. Therefore I have to change some value in my text file. Text file is large but i need to change e few line as follows;
loadvari47rotz(2,1,1) = *0.174532925199433* ??CHANGING_LINE-1
loadvari47rotz(3,1,1) = *0.349065850398866* ??CHANGING_LINE-2
I want to change above value for each step. Text file is at attachment and you can find changing lines CTRL+F "??CHANGING_LINE-1" and "??CHANGING_LINE-1".
I will be so happy if you help me.
Best Regards, Ahmet TATAR

Accepted Answer

Cedric
Cedric on 8 Oct 2017
Edited: Cedric on 8 Oct 2017
Here is an example, and then we can tailor the solution to your needs from there:
content = fileread( 'TEST.txt' ) ;
content = regexprep( content, '(?<=_loadvari47rotz\(2,1,1\) = )\S+', sprintf( '%f', 0.123 )) ;
content = regexprep( content, '(?<=_loadvari47rotz\(3,1,1\) = )\S+', sprintf( '%f', 0.456 )) ;
fId = fopen( 'TEST_updated.txt', 'w' ) ;
fwrite( fId, content ) ;
fclose( fId ) ;
This can easily be updated for matching/replacing other parts, looping through files, etc.
  1 Comment
Walter Roberson
Walter Roberson on 8 Oct 2017
To emphasize slightly: Cedric produces a new output file that has the right content, rather than changing the values "inside" the file. Updating a text file "in place" is only possible if the replacement text has exactly the same length as the original text. The update process is enough of a nuisance to do reliably that on the whole producing a new output file is easier and more reliable.

Sign in to comment.

More Answers (1)

AHMET TATAR
AHMET TATAR on 8 Oct 2017
Dear Cedric and Walter,
This is very helpful for me. thank you for information.
  1 Comment
Cedric
Cedric on 8 Oct 2017
Our pleasure!
And thank you Walter for the complement :)

Sign in to comment.

Categories

Find more on Data Import and Export 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!