文件操作工具。
此外,还 org.apache.commons.io.FileUtils 里还有不少工具。
Type | Name and description |
---|---|
static boolean |
combineFiles(List srcFiles, Object dest, boolean deleteSrc = false ) 合并多个文件 |
static void |
copyDirectory(Object src, Object dest) 文件夹复制。 |
static void |
copyFile(Object srcFile, Object dest) 文件复制。 |
static String |
createSafeName(String name, String searchChars = null, String replaceChars = null) 创建一个安全的文件名,不会导致由于操作系统不支持而无法写入文件。 |
static Object |
deserializeObject(java.io.File file) 将文件反序列化,并返回对象 |
static String |
encodeAsBase64(java.io.File file) 将文件内容转换成Base64编码的字符串 |
static String |
fileIcon(String name) 计算常见的文件类型图标名 |
static String |
fileMimeType(String filename) 计算文件的MIME类型 |
static org.codehaus.groovy.grails.io.support.Resource |
getResource(String path) 从WEB应用的 classpath 中获得资源文件(如 properties 文件),包括 jar 包中的文件 |
static String |
getResourceText(String path, String encoding = "UTF-8" ) 获得资源文件的内容 |
static String |
md5(java.io.File file) 计算文件的MD5 |
static boolean |
mklinkHard(Object src, Object dest) 创建文件或文件夹的硬链接 |
static void |
moveDirectory(Object src, Object dest) 文件夹移动。 |
static void |
moveFile(Object srcFile, Object dest) 文件移动。 |
static void |
saveFromBase64(java.io.File file, String str) 将Base64编码的字符串转换成文件 |
static void |
serializeObject(Object obj, java.io.File file) 将对象序列化并保存到文件系统中 |
static String |
sizeString(Long fileSize) 获得文件大小的表达式,数字+B/KB/MB/G |
Methods inherited from class | Name |
---|---|
class Object |
Object#wait(long), Object#wait(long, int), Object#wait(), Object#equals(Object), Object#toString(), Object#hashCode(), Object#getClass(), Object#notify(), Object#notifyAll() |
合并多个文件
srcFiles
- 要合并的原始文件(名)列表,如果文件不存在,会自动跳过该文件dest
- 目标文件(名)deleteSrc
- 合并完成后,是否删除所有原始文件(注:如果删除失败不会有抛出任何异常)文件夹复制。如果目标文件夹存在,则会自动覆盖/合并目标文件夹。
注意:如果是要复制文件夹A到某个文件夹B内部,则参数dest应该为“B/A”。
src
- 源文件夹对象或文件夹路径dest
- 新的文件夹对象或文件夹路径文件复制。如果目标文件存在,则会自动覆盖目标文件。
srcFile
- 源文件对象或文件路径dest
- 目标文件(夹)对象或文件(夹)路径。 如果为文件夹路径,则需要在后面加上“/”或“\\”,避免由于文件夹不存在而复制出该名称的文件。
创建一个安全的文件名,不会导致由于操作系统不支持而无法写入文件。
如 Windows 不支持 “\/:*?"<>|” 等字符。
如果需要进行字符替换,请参考:
http://commons.apache.org/proper/commons-lang/javadocs/api-release/org/apache/commons/lang3/StringUtils.html
name
- 要处理的文件名searchChars
- a set of characters to search for, may be nullreplaceChars
- a set of characters to replace, may be null将文件反序列化,并返回对象
将文件内容转换成Base64编码的字符串
file
- 要转换的文件计算常见的文件类型图标名
name
- 文件名计算文件的MIME类型
参考:http://www.rgagnon.com/javadetails/java-0487.html
filename
- 带扩展名的文件名,或者“.”加上扩展名,如“.doc”从WEB应用的 classpath 中获得资源文件(如 properties 文件),包括 jar 包中的文件
获得资源文件的内容
计算文件的MD5
创建文件或文件夹的硬链接
限制:不能跨分区;不支持文件夹;不支持网络驱动器。
src
- 源文件对象或文件路径dest
- 目标文件(夹)对象或文件(夹)路径。 如果为文件夹路径,则需要在后面加上“/”或“\\”,避免由于文件夹不存在而复制出该名称的文件。
文件夹移动。如果目标文件夹存在,则会自动覆盖/合并目标文件夹。
注意:如果是要移动文件夹A到某个文件夹B内部,则参数dest应该为“B/A”。
src
- 源文件夹对象或文件夹路径dest
- 新的文件夹对象或文件夹路径文件移动。如果目标文件存在,则会自动覆盖目标文件。
srcFile
- 源文件对象或文件路径dest
- 目标文件(夹)对象或文件(夹)路径。 如果为文件夹路径,则需要在后面加上“/”或“\\”,避免由于文件夹不存在而复制出该名称的文件。
将Base64编码的字符串转换成文件
file
- 要保存的文件str
- 编码字符串将对象序列化并保存到文件系统中
注意对象必须实现 Serializable 接口,否则会抛出 NotSerializableException 异常
获得文件大小的表达式,数字+B/KB/MB/G