2014-10-12 1 views
0

결과를 .dat 형식으로 순차적으로 증가하는 이름으로 저장하려고합니다. 잘못된 형식/파일 이름으로 끝납니다.결과 저장 .dat 형식으로 순서를 바꿉니다.

1st loop result  
cm_clusters_2=[ 0.0293650000000000 0.0562520000000000] 

2nd loop result 
cm_clusters_2=[ 0.0293650000000000 0.0562520000000000; 0.0293650000000000 0.0562520000000000] 

3rt loop result 
cm_clusters_2=[ 0.0293650000000000 0.0562520000000000; 0.0293650000000000 0.0562520000000000;  
       0.0293650000000000 0.0562520000000000] 
. 
. 
. 
10th loop result 
cm_clusters_2= [0.0293650000000000 0.0562520000000000; 0.0293650000000000 0.0562520000000000;  
       0.0293650000000000 0.0562520000000000; 0.0293650000000000 0.0562520000000000; 
       0.0293650000000000 0.0562520000000000; 0.0293650000000000 0.0562520000000000; 
       0.0293650000000000 0.0562520000000000; 0.0293650000000000 0.0562520000000000; 
       0.0293650000000000 0.0562520000000000; 0.0293650000000000 0.0562520000000000] 

시퀀스 번호 형식 :

if(kk<10) 
    file_number = ['0000' int2str(kk)]; 
elseif(kk>=10 && kk<100) 
    file_number = ['000' int2str(kk)]; 
elseif(kk>=100 && kk<1000) 
    file_number = ['00' int2str(kk)]; 
elseif(kk>=1000 && kk<10000) 
    file_number = ['0' int2str(kk)]; 
end 

나는 이미 저장 파일 이름을 변경하여 있지만 "particles_file_name"및 기타 또는

작동하지의 이름으로 저장 1 형식 파일에서 이러한 세 가지 형식을 시도
if kk~=1 

    particles_file_name = ['cm_clusters_2_' file_number.dat]; 

    save particles_file_name cm_clusters_2 -ASCII ; 

end 

2 형식

if kk~=1 

    particles_file_name = ['cm_clusters_2_' file_number]; 

    save particles_file_name.dat cm_clusters_2 -ASCII ; 

end 

3 형식

if kk~=1 

    save (['cm_clusters_2_' file_number.dat] cm_clusters_2 -ASCII ; 

end 

구원의 파일 이름의 .dat 형식과 순서 현명한 증가 내 데이터 파일을 저장할 수있는 모든 명령 줄.

내 과거의 질문에서 나는 내 resuts가 동일한 이름 ("particles_file_name") 아래에 저장되어있는 내 데이터와 함께이 질문을 작성하는 이유는 무엇입니까 업데이트 된 욕망 시퀀스 파일 이름을 얻지 못할 것입니다 내게 적합하지 않습니다 결과. Sequence save of .dat files in matlab

답변

1

kk 이하 5 개 자리가있는 경우 최소 5 자리 숫자가 0으로 채워 당신에게 int를 줄 것이다 sprintf

particles_file_name = sprintf('cm_clusters_2_%05d.dat', kk); 
save(particles_file_name, '-ASCII', 'cm_clusters_2'); 

형식 문자열 '%05d'formatting strings을 시도합니다.

또한 동일한 형식 문자열을 사용하여 문자열

file_number = num2str(kk, '%05d'); 

에게 Againg를 포맷 할 수 있다는 num2strint2str 교체를 고려 할 수 있습니다.

+0

thnx shai 작품입니다. – ksbiefr

관련 문제