我在 Windows 下运行 Matlab 7.8.0。
我正在调用一个外部实用程序,使用dos()
它在当前目录中创建一个文件。exist
I 文件已正确创建,但or无法看到它fopen
,它分别返回0
and -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 shell 检查:
/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,它工作正常。但是我需要动态创建文件然后访问它!