WindowsでMatlab7.8.0を実行しています。
dos()
現在のディレクトリにファイルを作成するために使用する外部ユーティリティを呼び出しています。私はファイルが正しく作成されていますが、それぞれとを返すexist
またはによって表示されません。ファイル名は正しいです!fopen
0
-1
>> pwd
ans =
I:\
>> ls
file1.asc file2.asc file3.asc
>> exist('file1.asc') % this file was there before
ans =
2
>> exist('file2.asc') % this file is newly created
ans =
0
奇妙で問題のあるファイル名ではないことを確認するために、Cygwinシェルから確認しました。
/cygdrive/i/ $ if [ -f file2.asc ]; then echo "OK"; fi
OK
したがって、ファイルは良好です。名前を変更してみました
/cygdrive/i/ $ mv file2.asc test
とMatlabで
>> ls
file1.asc file3.asc test
>> exist('test')
ans =
0
Matlabを終了して再起動すると、正常に動作します。ただし、ファイルを動的に作成してからアクセスする必要があります。