如何使用 java 获取文件关闭事件
How to get file close event using java
我的应用程序使用 java
在数据库 (mongodb
) 中保存 excel 文件数据。
用户点击我的应用程序即可
- 首先在本地
filesystem
创建一个 excel 文件,例如 C:\ali.xlsx
并将数据放在 excel 文件中。
- 使用
java.awt.Desktop
class open
方法打开 excel 文件 C:\ali.xlsx
cross platform
视角。
当用户关闭文件 C:\ali.xlsx
获取其关闭事件时,我将获取文件更新值并将其保存到 database
.
从本地filesystem
删除文件C:\ali.xlsx
。
我的问题:
如何实施第三个要点。
简而言之:如何使用 java
.
获取任何文件的 close
事件
如果有人有其他方法来实现此功能,请也告诉我这就是我编写应用程序流程的原因。
我不知道有什么直接的方法,上坡 (:-)) 的方法是:
- 使用 WatchService, (tutorial)
监视文件系统
- 如果修改了 Excel 文件 check if it's open in processes list,如果没有 - 继续下一步。
如果我理解正确的话,您有一个 Excel sheet 并且您想在每次更新时将此数据保存到 mongodb。
您的要求没有可用的触发器。相反,您可以定期读取文件并检查 "lastModified" 属性。或者,当您每次删除文件时,这意味着如果它存在,您就有了更新。
我的应用程序使用 java
在数据库 (mongodb
) 中保存 excel 文件数据。
用户点击我的应用程序即可
- 首先在本地
filesystem
创建一个 excel 文件,例如C:\ali.xlsx
并将数据放在 excel 文件中。 - 使用
java.awt.Desktop
classopen
方法打开 excel 文件C:\ali.xlsx
cross platform
视角。 当用户关闭文件
C:\ali.xlsx
获取其关闭事件时,我将获取文件更新值并将其保存到database
.从本地
filesystem
删除文件C:\ali.xlsx
。
我的问题:
如何实施第三个要点。
简而言之:如何使用 java
.
close
事件
如果有人有其他方法来实现此功能,请也告诉我这就是我编写应用程序流程的原因。
我不知道有什么直接的方法,上坡 (:-)) 的方法是:
- 使用 WatchService, (tutorial) 监视文件系统
- 如果修改了 Excel 文件 check if it's open in processes list,如果没有 - 继续下一步。
如果我理解正确的话,您有一个 Excel sheet 并且您想在每次更新时将此数据保存到 mongodb。 您的要求没有可用的触发器。相反,您可以定期读取文件并检查 "lastModified" 属性。或者,当您每次删除文件时,这意味着如果它存在,您就有了更新。