我正在寻找一种方法来持续监控何时在我没有代码的特定第三方程序中打开文件(例如Microsoft Word),打开特定文件的名称,以及何时打开文件/程序已关闭。
了解这些信息背后的目的是让我可以跟踪某些“文档”或文件的打开时间,以便轻松记录各种项目的时间。
现在,我想到的唯一方法是让我的Java程序发送命令来打开特定文件,然后记下这些文件关闭的时间,但我更喜欢这样可以在后台运行更多,并为用户提供尽可能简单和透明的信息。
谢谢!
答案 0 :(得分:0)
使用此选项检查文件是否在给定时间打开。定期检查,当状态改变时,文件打开或关闭。
try {
FileOutputStream stream = new FileOutputStream(file);
// file is closed
} catch(IOException e) {
// file is open
}
答案 1 :(得分:0)
/ TO CHECK WHETHER A FILE IS OPENED
// OR NOT (not for .txt files)
// the file we want to check
String fileName = "C:\\Text.xlsx";
File file = new File(fileName);
// try to rename the file with the same name
File sameFileName = new File(fileName);
if(file.renameTo(sameFileName)){
// if the file is renamed
System.out.println("file is closed");
}else{
// if the file didnt accept the renaming operation
System.out.println("file is opened");
}