write in a txt file
3 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Andrea Somma
am 7 Mai 2022
Kommentiert: Andrea Somma
am 8 Mai 2022
i have to write parameters into a .txt file where there are already some written lines (a sort of template) like this
from:
Dictionary kinetics
{
@Kinetics
@Thermodynamics
@Output
}
to:
Dictionary kinetics
{
@Kinetics Cartel1;
@Thermodynamics Cartel2;
@Output Cartel3;
}
the number of whitespaces in beetween isnt a problem, I can' t find a way to do it
0 Kommentare
Akzeptierte Antwort
Image Analyst
am 7 Mai 2022
Try this
% Open the file for reading in text mode.
fileID = fopen(fullFileName, 'rt');
% Open the file for reading in text mode.
outputFileID = fopen(outputFullFileName, 'wt');
% Read the first line of the file.
textLine = fgetl(fileID);
lineCounter = 1;
while ischar(textLine)
% Print out what line we're operating on.
fprintf('%s\n', textLine);
if contains(textLine, 'Kinetics')
textLineOut = sprintf('%s %f', textLine, Cartel(1))
elseif contains(textLine, 'Thermodynamics')
textLineOut = sprintf('%s %f', textLine, Cartel(2))
elseif contains(textLine, 'Output')
textLineOut = sprintf('%s %f', textLine, Cartel(3))
end
% Output line of text to output file
fprintf(outputFileID, '%s\n', textLineOut);
% Read the next line.
textLine = fgetl(fileID);
lineCounter = lineCounter + 1;
end
% All done reading all lines, so close the files.
fclose(fileID);
fclose(outputFileID);
Untested, so adapt as needed.
6 Kommentare
Image Analyst
am 7 Mai 2022
If the "Cartel" are not numbers in an array, you can do this:
if contains(textLine, 'Kinetics')
textLineOut = sprintf('%s Cartel1', textLine)
elseif contains(textLine, 'Thermodynamics')
textLineOut = sprintf('%s Cartel2', textLine)
elseif contains(textLine, 'Output')
textLineOut = sprintf('%s Cartel3', textLine)
end
Weitere Antworten (0)
Siehe auch
Kategorien
Mehr zu Thermodynamics and Heat Transfer finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!