for文を使って連番のテキストファイルに書き込む

15 views (last 30 days)
H.K
H.K on 2 Mar 2023
Edited: H.K on 2 Mar 2023
for文を使って以下のexp.txtを"1.txt、2.txt、3.txt"のように連番で書き込みが
できるようfopenしたいと考えています。
fileID = fopen('exp.txt','w');
何か良い方法はないでしょうか。
具体的には下記のFileIDを連番にしてfor以下の内容を書き込みたいです。
fileID = fopen('exp.txt','w');
for j = 3:7:38
F = x6(:,j);
F1 = max(F)
fprintf(fileID,'%6.2f\n',F1);
end
fclose(fileID);
ご助言の程宜しくお願い致します。

Accepted Answer

Hernia Baby
Hernia Baby on 2 Mar 2023
Edited: Hernia Baby on 2 Mar 2023
もしかするとfileIDをファイル名と混同されてるかもしれないので2通り書きます。
①exp.txt に x6 の指定列の最大を書く方法
clc,clear;
x6 = randi([0 100],38);
fileID = fopen('exp.txt','w');
for jj = 3:7:38
fprintf(fileID,'%6.2f\n',max(x6(:,jj)));
end
fclose(fileID);
②テキスト名を変更して保存する方法
clc,clear;
idx = 3:7:38;
x6 = randi([0 100],38);
for ii = 1:length(idx)
jj = idx(ii);
F1 = max(x6(:,jj));
F2 = sprintf('%6.2f',F1);
writematrix(F2,sprintf('%i.txt',ii))
end
  1 Comment
H.K
H.K on 2 Mar 2023
②番目の方法で実行した結果うまくいきました。
ご助言頂き有難う御座います。

Sign in to comment.

More Answers (0)

Categories

Find more on データ型の識別 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!