ext2directoryrecord.java
来自「纯java操作系统jnode,安装简单和操作简单的个人使用的Java操作系统」· Java 代码 · 共 79 行
JAVA
79 行
/*
* $Id: Ext2DirectoryRecord.java,v 1.4 2004/01/02 09:16:09 epr Exp $
*/
package org.jnode.fs.ext2;
import org.apache.log4j.Logger;
/**
* A single directory record, i.e. the inode number and name of an entry in a directory
*
* @author Andras Nagy
*/
public class Ext2DirectoryRecord {
private int iNodeNr;
private int recLen;
private short nameLen;
private short type;
private StringBuffer name;
private static final Logger log = Logger.getLogger(Ext2DirectoryRecord.class);
/**
* @param data:
* the data that makes up the directory block
* @param offset:
* the offset where the current DirectoryRecord begins
*/
public Ext2DirectoryRecord(byte[] data, int offset) {
iNodeNr = (int) Ext2Utils.get32(data, offset);
recLen = Ext2Utils.get16(data, offset + 4);
nameLen = Ext2Utils.get8(data, offset + 6);
type = Ext2Utils.get8(data, offset + 7);
name = new StringBuffer();
if (iNodeNr != 0) {
//XXX character conversion
for (int i = 0; i < nameLen; i++)
name.append((char) Ext2Utils.get8(data, offset + 8 + i));
log.debug("Ext2DirectoryRecord(): iNode=" + iNodeNr + ", name=" + name);
}
}
/**
* Returns the fileType.
*
* @return short
*/
public short getType() {
return type;
}
/**
* Returns the iNodeNr.
*
* @return long
*/
public int getINodeNr() {
return iNodeNr;
}
/**
* Returns the name.
*
* @return StringBuffer
*/
public String getName() {
return name.toString();
}
/**
* Returns the recLen.
*
* @return int
*/
public int getRecLen() {
return recLen;
}
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?