public final class IOUtil extends Object
| 构造器和说明 |
|---|
IOUtil() |
| 限定符和类型 | 方法和说明 |
|---|---|
static void |
close(Closeable... ioArr)
关闭流
|
static long |
computeCrc32(byte[] bytes)
计算字节的CRC32
|
static int |
copy(InputStream src,
OutputStream dest)
赋值输入流数据至输出流
注:src可以被多次copy。
|
static void |
delete(File dirOrFile)
删除文件/文件夹
|
static List<File> |
listFile(File dirOrFile,
int mode)
罗列所有文件文件夹
注:dirOrFile对象本身也会被作为罗列对象。
|
static void |
listFile(File dirOrFile,
List<File> fileContainer,
int mode)
罗列所有文件文件夹
注:dirOrFile对象本身也会被作为罗列对象。
|
static List<File> |
listFileOnly(File dirOrFile,
String... suffix)
只罗列文件(即:只返回文件)
注:dirOrFile对象本身也会被作为罗列对象。
|
static List<File> |
listSubFile(File dirOrFile,
int mode)
罗列所有子孙文件文件夹(不包含dirOrFile对象本身)
|
static byte[] |
mergeByte(byte[]... byteArr)
合并byte[]
|
static String |
readContentFromFile(File file)
读取文件内容
|
static byte[] |
readFileFromWorkbenchRoot(File workbenchRoot,
String relativeFilePath)
从jar文件或目录中读取文件字节
|
static boolean |
startWithCAFEBABE(byte[] bytes)
判断字节流bytes的内容是否是以CAFEBABE打头的
注:
每个Class文件的头4个字节称为魔数(Magic Number),它的唯一作用是确定这个文件是否为一个能被虚拟机接收的Class文件。
|
static byte[] |
toBytes(File file)
读取文件
|
static byte[] |
toBytes(InputStream inputStream)
将inputStream转换为byte[]
注:此方法会释放inputStream
|
static void |
toFile(byte[] srcFileBytes,
File destFile,
boolean createIfNecessary)
将srcFileBytes写出为destFile文件
注: 若源文件存在,则会覆盖原有的内容。
|
static void |
writeContentToFile(String content,
File file)
将内容写入到文件
注:若原文件存在,则会覆盖原文件中的内容。
|
public static void toFile(byte[] srcFileBytes,
File destFile,
boolean createIfNecessary)
注: 若源文件存在,则会覆盖原有的内容。
srcFileBytes - 字节destFile - 文件createIfNecessary - 如果需要的话,创建文件public static byte[] toBytes(File file)
file - 文件public static byte[] toBytes(InputStream inputStream) throws IOException
注:此方法会释放inputStream
inputStream - 输入流IOExceptionpublic static List<File> listFileOnly(File dirOrFile, String... suffix)
注:dirOrFile对象本身也会被作为罗列对象。
dirOrFile - 要罗列的文件夹(或者文件)suffix - 要筛选的文件的后缀(若suffix为null, 则不作筛选)public static List<File> listSubFile(File dirOrFile, int mode)
dirOrFile - 要罗列的文件夹(或者文件)mode - 罗列模式(0-罗列文件和文件夹; 1-只罗列文件; 2-只罗列文件夹)public static List<File> listFile(File dirOrFile, int mode)
注:dirOrFile对象本身也会被作为罗列对象。
dirOrFile - 要罗列的文件夹(或者文件)mode - 罗列模式(0-罗列文件和文件夹; 1-只罗列文件; 2-只罗列文件夹)public static void listFile(File dirOrFile, List<File> fileContainer, int mode)
注:dirOrFile对象本身也会被作为罗列对象。
dirOrFile - 要罗列的文件夹(或者文件)fileContainer - 罗列结果mode - 罗列模式(0-罗列文件和文件夹; 1-只罗列文件; 2-只罗列文件夹)public static void delete(File dirOrFile)
dirOrFile - 要删的除文件/文件夹public static int copy(InputStream src, OutputStream dest) throws IOException
注:src可以被多次copy。 注:若dest所代表的“文件”已存在,则会覆盖原来的数据。
src - 输入流dest - 输出流IOExceptionpublic static long computeCrc32(byte[] bytes)
bytes - 字节public static void writeContentToFile(String content, File file)
注:若原文件存在,则会覆盖原文件中的内容。
content - 内容file - 文件public static void close(Closeable... ioArr)
ioArr - 待关闭的iopublic static byte[] mergeByte(byte[]... byteArr)
byteArr - 字节数组public static byte[] readFileFromWorkbenchRoot(File workbenchRoot, String relativeFilePath)
workbenchRoot - zip文件或目录(如: /tmp/, /tmp/abc.jar, /tmp/abc.war等)relativeFilePath - 要读取的文件的相对路径(如:META-INF/winter/xyz.txt)public static boolean startWithCAFEBABE(byte[] bytes)
Copyright © 2023. All rights reserved.