java获取文件的inode标识符的方法
作者:brucelwl 发布时间:2021-06-19 15:10:49
标签:java,inode,标识符
java获取文件的inode标识符,如果文件被删除或者重命名,inode的值会发生变更,因此可以在第一次加载File之后记录inode,后续校验inode的值来判断文件是否被删除、重命名或重新创建等。
方法1
import java.io.File;
import java.nio.file.Files;
import java.nio.file.attribute.BasicFileAttributeView;
import java.nio.file.attribute.BasicFileAttributes;
/**
* Created by bruce on 2022/3/27 21:39
*/
public class FileInodeReaderTest {
public static void main(String[] args) {
File file = new File("/logs/csp/sentinel-block.log");
try {
BasicFileAttributeView basicview = Files.getFileAttributeView(file.toPath(), BasicFileAttributeView.class);
BasicFileAttributes attr = basicview.readAttributes();
System.out.println("attr.fileKey():" + attr.fileKey()
+ " attr.creationTime:" + attr.creationTime()
+ " attr.lastModifiedTime:" + attr.lastModifiedTime());
} catch (Exception ex) {
System.out.println(ex.getMessage());
}
}
}
方法2
import java.io.File;
import java.nio.file.Files;
/**
* Created by bruce on 2022/3/27 21:39
*/
public class FileInodeReaderTest {
public static void main(String[] args) {
File file = new File("/logs/csp/sentinel-block.log");
try {
Object inode = Files.getAttribute(file.toPath(), "unix:ino");
System.out.println("inode->" + inode);
} catch (Exception ex) {
System.out.println(ex.getMessage());
}
}
}
补充:Java INode类代码示例
INode类属于org.jbpt.petri包,在下文中一共展示了INode类的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Java代码示例。
示例1: getRefinedBondType
import org.jbpt.petri.INode; //导入依赖的package包/类
@Override
public WFTreeBondType getRefinedBondType(IRPSTNode<F,N> node) {
if (node.getType()!=TCType.BOND)
return WFTreeBondType.UNDEFINED;
else {
WFTreeBondType type = this.bond2type.get(node);
if (type!=null) return type;
else {
INode entry = node.getEntry();
INode exit = node.getExit();
if (entry==null || exit == null)
return WFTreeBondType.UNDEFINED;
for (IRPSTNode<F,N> child : this.getChildren(node)) {
if (child.getEntry().equals(node.getExit())) {
type = WFTreeBondType.LOOP;
this.bond2type.put(node,type);
return type;
}
}
if (entry instanceof ITransition && exit instanceof ITransition) {
type = WFTreeBondType.TRANSITION_BORDERED;
this.bond2type.put(node,type);
return type;
if (entry instanceof IPlace && exit instanceof IPlace) {
type = WFTreeBondType.PLACE_BORDERED;
return WFTreeBondType.UNDEFINED;
}
}
}
来源:https://blog.csdn.net/u013202238/article/details/123888271
0
投稿
猜你喜欢
- 文件作为存储数据的单元,会根据数据类型产生很多分类,也就是所谓的文件类型。在对数据文件进行操作时,常常需要根据不同的文件类型来作不同的处理。
- 一、Mybatis1、mybatis-config.xml<?xml version="1.0" encoding
- 简介MyBatis-Plus (opens new window)(简称 MP)是一个 MyBatis (opens new window)
- 程序调用自身的编程技巧称为递归( recursion)。递归做为一种算法在程序设计语言中广泛应用。 一个过程或函数在其定义或说明中有直接或间
- 这篇文章主要介绍了RabbitMQ延迟队列及消息延迟推送实现详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值
- 记录web项目部署到阿里云服务器步骤(使用 web项目、阿里云服务器、Xftp、Xshell),敬请参考和指正1.将要部署的项目打包成WAR
- 需要读取excel数据转换成json数据,写了个测试功能,转换正常:JSON转换:org.json.jar 测试类:
- 五十七、只针对异常情况才使用异常: 不知道你否则遇见过下面的代码: &
- OutputDebugString属于windows API的,所以只要是包含了window.h这个头文件后就可以使用了。可以把调
- 本文实例为大家分享了Android实现支付宝支付密码输入界面的具体代码,供大家参考,具体内容如下效果图:主要代码:import java.u
- IDEA快速创建getter和setter方法找到generate我的是Mac,右击鼠标就可以打开,相信windows也不难。选择gette
- 1. Spring Boot 入门 Spring Boot是Spring社区较新的一个项目。该项目的目的是帮助开发者更容易的创建基于Spri
- 本文介绍了Java实现动态获取图片验证码的示例代码,分享给大家,具体如下:import javax.imageio.ImageIO;impo
- 你是否受够了每次修改静态文件都要重启服务器?有时候在一些公司前后端的职责没有那么的明确,往往后台人员也要去写一些页面,像jsp页面,或者其他
- 本文主要介绍Java Date 日期类型,以及Calendar的怎么获取时间,然后写成时间工具类里面有下面这些方法:- 时间转字符串(有默认
- 一、依赖注入方式思考:向一个类中传递数据的方式有几种?普通方法(set方法)构造方法思考:依赖注入描述了在容器中建立bean与bean之间依
- 问题:Information:java: Errors occurred while compiling module &lsquo
- 一.RabbitMQ消息丢失的三种情况第一种:生产者弄丢了数据。生产者将数据发送到 RabbitMQ 的时候,可能数据就在半路给搞丢了,因为
- 1.在实体类中添加@TableId注解:2.在navicat中设置id自动增长:3.测试一下,当我们再次插入的时候,就会看到id4.对注解中
- 1. 简单说明嗨,大家好!今天给大家分享的是Mybatis-plus 插件的分页机制,说起分页机制,相信我们程序员都不陌生,今天,我就给大家