データファイルが他の​アプリケーションによ​って開かれているか確​認する方法はあります​か?

조회 수: 30 (최근 30일)
MathWorks Support Team
MathWorks Support Team 2013년 3월 13일
MATLAB で CSV や EXCEL などのデータを読み込んでいます。外部の別のアプリケーションで該当ファイルが使用されていたり、ロックされていると、エラーとなります。
ファイルが他のアプリケーションからアクセスされているか、事前に確認する方法を教えてください。

채택된 답변

MathWorks Support Team
MathWorks Support Team 2013년 3월 13일
データファイルが他のアプリケーションからアクセスされているかどうかを確認するための直接的な機能はありませんが、fopen 関数で 'r+' オプションを用いてファイルを開くことで確認することができます。
'r+' オプションは、「読み書き」アクセスの認証となり、他のアプリケーションでファイルをロックしていたり、何らかの理由でファイルが開けない場合には -1 を出力します。
fid = fopen(filename,'r+'); % ファイルのオープン(読み書き権限)
if fid~=-1 % 正常にオープンできた場合
data = textscan(fid,...); % ファイルの読み込み
....
  fclose(fid)
end

추가 답변 (0개)

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!