2017-12-16 26 views
1

dlmwrite 명령은 파일에 마지막으로 수백 바이트를 쓰지 않고 명령을 씁니다. 어떻게 이러한 바이트를 플러시 할 수 있습니다. 파일 ID가 없어서 fflush을 사용할 수없는 것 같습니다. 내 옥타브 버전은 4.2.1옥타브에서 dlmwrite의 출력을 플러시하는 방법

편집입니다 : 파일 이름이 하나의 문자 긴 경우

>> A=[1 1]; 
>> dlmwrite('A',A); % after this line you will have an empty file 
>> exit    % after this line the file will contain "1,1" 

답변

1

글쎄, 당신은 dlmwrite에 GNU 옥타브에서 버그를 발견했습니다 : 나는 작은 실험을 실시했다. 197

... 
if (! isscalar (file)) 
    fclose (fid); 
endif 
... 

이 코드 파일은 파일 이름 또는 FID (dlmwrite에 다른 호출 방법 참조)이 있는지 확인하려고 라인 주위 dlmwrite.m에서보세요. 파일 이름이 1 바이트 길이이고 따라서 스칼라 일 경우 분명히이 검사는 실패합니다.

두 개 이상의 문자가있는 파일 이름을 사용하면 예상대로 작동하는지 확인하십시오.

편집 :

+0

얍, 그것은 긴 이름을 가진 잘 작동합니다. [The bug report.] (http://savannah.gnu.org/bugs/index.php?52679) 감사합니다! – Yola