Is there a way to detect if a file is open in another application from MATLAB?
56 ビュー (過去 30 日間)
古いコメントを表示
I have a problem reading a file and I would like to check if the file is already opened by another application before using load.
I have received access conflicts when I try to read a file with MATLAB while this file is written to by another application.
Any idea?
2 件のコメント
Walter Roberson
2011 年 2 月 8 日
Are you willing to restrict this question to MS Windows and access to either local drives or a shared drive on a Windows server? The answers get much more complicated in other cases.
採用された回答
Andreas Goser
2011 年 2 月 8 日
The FOPEN command returns a -1 if there is an issue with opening the file. You can use that. Even if you use LOAD or other functions to really import the data, you can use FOPEN (and probably FCLOSE) to test if it is blocked by another application.
3 件のコメント
Andreas Goser
2011 年 2 月 8 日
If the other application is not writing, there is no "block". So a question here is what else do you have under control and how narrow the problem is.
その他の回答 (1 件)
Aurelien Queffurust
2011 年 2 月 8 日
Another strategy is to use a file as a semaphore.
This trick is used for example in this submission: Multicore - Parallel processing on multiple cores
0 件のコメント
参考
カテゴリ
Help Center および File Exchange で File Operations についてさらに検索
製品
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!