ARRANGING TEXT FILE?

6 vues (au cours des 30 derniers jours)
AHMET TATAR
AHMET TATAR le 8 Oct 2017
Commenté : Cedric le 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

Réponse acceptée

Cedric
Cedric le 8 Oct 2017
Modifié(e) : Cedric le 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 commentaire
Walter Roberson
Walter Roberson le 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.

Connectez-vous pour commenter.

Plus de réponses (1)

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

Connectez-vous pour commenter.

Catégories

En savoir plus sur Text Data Preparation dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by