0

名前を指定せずにディレクトリ内の最初のファイルの名前を単純にロードし、各反復でディレクトリ内の次のファイルに移動する方法はありますか?

ファイル名に 1、1.5、2、2.5、3、3.5 などの末尾が付けられているという問題があります...そのため、繰り返しの num2str(X) はファイルを見つけるのに役立ちません。

strrep(s1,s2,s3) を使用してそれらの名前を変更しようとしていますが、ループにロードするという同じ問題に遭遇します!

最初にもっと計画的に名前を付ける必要があったことは理解していますが、これらのファイルは大きすぎてシミュレーションを再度実行できません。

これは、ファイルの名前を変更する必要があるものです。

%%%RENAMING A FILE%%%

%Search directory to get number of files
 d1=dir('\MATLAB\Data\NumberedQwQoRuns');
 numfiles = length(d1)-2;


for a=1:numfiles
%Search subdirectory if necessary for count of those folders
d2=dir('\MATLAB\Data\NumberedQwQoRuns\Run'num2str(a));
subdir = length(d2)-2;
for b= 1:subdir

origname= PROBLEM???

Newname=['Zdata' num2str(b) '.txt']
Newfile= strrep(origname, origname, newname)
movefile(origname,Newfile)

end
end

助けてくれてありがとう、アビッドA

4

2 に答える 2

0

から実際のファイル名を取得します。subdir(b).name

合成された名前が既存の名前のいずれかに一致する場合、問題が発生する可能性があることに注意してください。

于 2011-10-22T03:27:32.403 に答える