java正在读取另一个应用程序锁定的日志文件
我想访问被第三方Java应用程序锁定的日志文件。该文件被锁定了一整天,将于第二天发布。然而,我的目标是现在使用RandomAccessFile
(必须使用这个类,因为我需要在阅读时启动/存储最后一个位置)阅读它,而不必等到明天
目前,只有使用文件解锁软件解锁日志,我才能读取日志。有人能推荐我可以在Java程序中使用的jar/实用程序来实现我的目标吗
你可以在下面搜索框中键入要查询的问题!
我想访问被第三方Java应用程序锁定的日志文件。该文件被锁定了一整天,将于第二天发布。然而,我的目标是现在使用RandomAccessFile
(必须使用这个类,因为我需要在阅读时启动/存储最后一个位置)阅读它,而不必等到明天
目前,只有使用文件解锁软件解锁日志,我才能读取日志。有人能推荐我可以在Java程序中使用的jar/实用程序来实现我的目标吗
# 1 楼答案
假设您使用的是Microsoft操作系统:
软件Shadow Copy正在使用Microsoft的volume-shadow-service(VSS)复制锁定的文件。 您可以在Java运行时环境中使用该软件,也可以通过Java Native Interface自己使用VSS-API
我的方法是shadow-copy文件,然后通过其副本访问内容。缺点是,如果文件在复制操作后已更新,则可能正在读取过时的信息
然而,这只是一个猜测,因为我不熟悉这个话题