start to write for a specified location using fprintf
古いコメントを表示
FileName1='data_file';
result_1=23.9;
FileName2='data_file2';
result_2=21.9;
startingFolder='C:\Program Files\MATLAB';
if ~exist(startingFolder, 'dir')
startingFolder = pwd;
end
defaultFileName=fullfile(startingFolder, '*.txt');
[baseFileName, folder]=uiputfile(defaultFileName, 'Select a file');
if baseFileName == 0
return
end
fullFileName = fullfile(folder, baseFileName); %fullfile=building file
fid = fopen(fullFileName, 'w');
How can I write a text file (starting with line 2) for the results as following:
result_1 result_2
data_file: 23.9 data_file2: 21.9
採用された回答
その他の回答 (1 件)
Scott MacKenzie
2021 年 7 月 12 日
fid = fopen('testdata.txt', 'w'); % change, as needed
fprintf(fid, ' result_1 result_2\n');
fprintf(fid','data_file: %.1f data_file2: %.1f\n', result_1, result_2);
fclose(fid);
5 件のコメント
sermet OGUTCU
2021 年 7 月 12 日
Walter Roberson
2021 年 7 月 12 日
Is your requirement that you must write after all existing lines? Or is your requirement that you must start writing at line 2 specifically, even if there are additional lines? If there are additional lines, what do you want to have happen to them? Is the requirement to overwrite line 2, leaving all other lines intact?
Scott MacKenzie
2021 年 7 月 12 日
OK, got it. See the new solution I just posted.
Scott MacKenzie
2021 年 7 月 12 日
@Walter Roberson Thanks for pointing this out. Is this documented anywhere? I don't see any mention of this in the fseek documentation.
Walter Roberson
2021 年 7 月 12 日
POSIX requirement.
When a file is opened with update mode ( '+' as the second or third character in the mode argument), both input and output may be performed on the associated stream. However, the application shall ensure that output is not directly followed by input without an intervening call to fflush() or to a file positioning function ( fseek(), fsetpos(), or rewind()), and input is not directly followed by output without an intervening call to a file positioning function, unless the input operation encounters end-of-file.
カテゴリ
ヘルプ センター および File Exchange で Low-Level File I/O についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!