2. public static File getFile(String... names)
说明:获取目录下某个文件,多个name组合成一个路径
范例:
@Test public void TestGetFile() { try { File file = FileUtils.getFile("E:/data/gpslog", "msg.log"); List<String> contents = FileUtils.readLines(file);
for (String string : contents) { System.out.println(string); } } catch (Exception e) { e.printStackTrace(); } }</pre>
3. public static String getTempDirectoryPath()
说明:获取默认的临时文件路径
范例:
@Test public void TestGetTempDirectoryPath() { try { String directoryPath = FileUtils.getTempDirectoryPath();
System.out.println(directoryPath); } catch (Exception e) { e.printStackTrace(); } }</pre>
4. public static File getTempDirectory()
说明:获取默认的临时文件路径对应的文件夹对象
范例:
@Test
public void TestGetTempDirectory() {
try {
File directoryPathFile = FileUtils.getTempDirectory();
if (directoryPathFile.isDirectory()) {
String[] childs = directoryPathFile.list();
for (String child : childs) {
System.out.println(child);
}
}
} catch (Exception e) {
e.printStackTrace();
}
}
5. public static String getUserDirectoryPath()
说明:获取用户目录文件路径
范例:
@Test
public void TestGetUserDirectoryPath() {
try {
String userDirectoryPath = FileUtils.getUserDirectoryPath();
System.out.println(userDirectoryPath);
} catch (Exception e) {
e.printStackTrace();
}
}
6. public static String getUserDirectoryPath()
说明:获取用户目录文件路径
范例:
@Test
public void TestGetUserDirectory() {
try {
File directoryPathFile = FileUtils.getUserDirectory();
if (directoryPathFile.isDirectory()) {
String[] childs = directoryPathFile.list();
for (String child : childs) {
System.out.println(child);
}
}
} catch (Exception e) {
e.printStackTrace();
}
}
7.
public static FileInputStream openInputStream(File file) throws IOException
说明:获取文件对应的输入流
范例:
@Test public void TesTopenInputStream() { try { FileInputStream openInputStream = FileUtils.openInputStream(new File("E:/data/gpslog/msg.log")); byte[] data = new byte[openInputStream.available()];
while (openInputStream.read(data) != -1) { System.out.println(new String(data)); } } catch (Exception e) { e.printStackTrace(); } }</pre>
8.
public static FileInputStream openInputStream(File file) throws IOException
说明:获取文件对应的输出流。每次执行方法不是去追加内容,而是去覆盖。
范例:
@Test
public void TestOpenOutputStream() {
try {
FileOutputStream openOutputStream = FileUtils.openOutputStream(new File("E:/data/gpslog/msg.log"));
openOutputStream.write("hello world2".getBytes());
} catch (Exception e) {
e.printStackTrace();
}
}
9.
public static FileOutputStream openOutputStream(File file, boolean append) throws IOException
说明:获取文件对应的输出流。append为true时表示追加内容,否则表示覆盖文件内容。
范例:
@Test
public void TestOpenOutputStream() {
try {
FileOutputStream openOutputStream = FileUtils.openOutputStream(new File("E:/data/gpslog/msg.log"), true);
openOutputStream.write("hello girl".getBytes());
} catch (Exception e) {
e.printStackTrace();
}
}
10.
public static String byteCountToDisplaySize(long size)
说明:获取size对应的文件大小转换值,最小单位为byte。单位包含:bytes、KB、MB、GB、TB、PB、EB
范例:
@Test
public void TestByteCountToDisplaySize() {
try {
String byteCountToDisplaySize = FileUtils.byteCountToDisplaySize(1024 * 1024 * 1024);
System.out.println("size=" + byteCountToDisplaySize);
} catch (Exception e) {
e.printStackTrace();
}
}
输出:
size=1 GB
11.
public static String byteCountToDisplaySize(BigInteger size)
说明:获取size对应的文件大小转换值,最小单位为byte。单位包含:bytes、KB、MB、GB、TB、PB、EB
12.
public static void touch(File file) throws IOException
说明:修改文件的最后更新时间。若文件存在,修改文件的最后更新为当前时间;如果不存在,则创建文件并修改文件最后更新时间为当前时间。
范例:
@Test
public void TestTouch() {
try {
FileUtils.touch(new File("E:/data/gpslog/msg.log"));
} catch (Exception e) {
e.printStackTrace();
}
}
13.
public static File[] convertFileCollectionToFileArray(Collection<File> files)
说明:文件集合转换为文件数组
范例:
@Test public void TestConvertFileCollectionToFileArray() { try { List<File> files = Lists.newArrayList( new File("E:/data/gpslog/msg.log"), new File("E:/data/gpslog/msg_null.log")); File[] convertFiles = FileUtils.convertFileCollectionToFileArray(files); for (File file : convertFiles) { System.out.println(file.getName() + " --> " + FileUtils.readFileToString(file)); }
} catch (Exception e) { e.printStackTrace(); } }</pre>
14. public static Collection<File> listFiles(File directory, IOFileFilter fileFilter, IOFileFilter dirFilter)
说明:依据文件过滤器、文件夹过滤器,遍历目录下符合过滤器条件的文件。参数说明如下:
a. 第一个参数表示需要进行遍历的文件夹,不允许为空。
b. 第二个参数表示文件夹下面的文件需要满足的过滤器条件,不允许为空。过滤器有很多,比如EmptyFileFilter、NameFileFilter、PrefixFileFilter等。
c. 第三个参数,一般表示是否递归遍历文件夹。为空表示不进行递归遍历,
DirectoryFileFilter.INSTANCE表示递归遍历文件夹。
范例:
@Test public void TestListFiles() { try { File directory = new File("E:/data/gpslog"); IOFileFilter fileFilter = FileFilterUtils.and(EmptyFileFilter.NOT_EMPTY, FileFilterUtils.suffixFileFilter("log"));
List<File> found = (List<File>) FileUtils.listFiles(directory, fileFilter, DirectoryFileFilter.INSTANCE); for (File file : found) { System.out.println(file.getAbsolutePath()); } } catch (Exception e) { e.printStackTrace(); } }
15.
public static Collection<File> listFilesAndDirs( File directory, IOFileFilter fileFilter, IOFileFilter dirFilter)
说明:
依据文件过滤器、文件夹过滤器,遍历目录下符合过滤器条件的文件及文件夹。参数说明如下:
a. 第一个参数表示需要进行遍历的文件夹,不允许为空。
b. 第二个参数表示文件夹下面的文件需要满足的过滤器条件,不允许为空。过滤器有很多,比如EmptyFileFilter、NameFileFilter、PrefixFileFilter等。
c. 第三个参数,一般表示是否递归遍历文件夹。为空表示不进行递归遍历,
DirectoryFileFilter.INSTANCE表示递归遍历文件夹。
范例:
@Test public void TestListFilesAndDirs() { try { File directory = new File("E:/data/gpslog"); IOFileFilter fileFilter = FileFilterUtils.and(EmptyFileFilter.NOT_EMPTY, FileFilterUtils.suffixFileFilter("log"));
List<File> found = (List<File>) FileUtils.listFilesAndDirs(directory, fileFilter, DirectoryFileFilter.INSTANCE); for (File file : found) { if (file.isDirectory()) { System.out.println("文件夹:" + file.getAbsolutePath()); } else { System.out.println("文件##" + file.getAbsolutePath()); } } } catch (Exception e) { e.printStackTrace(); } }</pre>
输出:
文件夹:E:\data\gpslog
文件##E:\data\gpslog\msg_null.log
16.
public static Collection<File> listFiles(File directory, String[] extensions, boolean recursive)
说明:
依据文件名称过滤扩展数组,遍历目录下符合条件的文件。参数说明如下:
a. 第一个参数表示需要进行遍历的文件夹,不允许为空。
b. 第二个参数表示文件名称过滤扩展数据。
c. 第三个参数:true表示递归,false表示非递归。
范例:
@Test public void TestListFiles2() { try { File directory = new File("E:/data/gpslog"); List<File> found = (List<File>) FileUtils.listFiles(directory, new String[] { "log", "msg", "2" }, true); for (File file : found) { if (file.isDirectory()) { System.out.println("文件夹:" + file.getAbsolutePath()); } else { System.out.println("##文件##:" + file.getAbsolutePath()); } }
} catch (Exception e) { e.printStackTrace(); } }</pre>
17.
public static boolean contentEquals(File file1, File file2) throws IOException
说明:比较两个文件的内容以确定它们是否相等。
范例:
@Test
public void TestContentEquals() {
try {
boolean eq = FileUtils.contentEquals(FileUtils.getFile("E:\\data\\gpslog\\msg_null.log"),
FileUtils.getFile("E:\\data\\gpslog\\msg_null.log"));
System.out.println(eq);
} catch (Exception e) {
e.printStackTrace();
}
}
18.
public static boolean contentEqualsIgnoreEOL(File file1, File file2, String charsetName) throws IOException
说明:依据编码比较两个文件的内容以确定它们是否相等。
范例:
@Test
public void TestContentEqualsIgnoreEOL() {
try {
boolean eq = FileUtils.contentEqualsIgnoreEOL(FileUtils.getFile("E:\\data\\gpslog\\msg_null.log"),
FileUtils.getFile("E:\\data\\gpslog\\msg_null.log"), "UTF-8");
System.out.println(eq);
} catch (Exception e) {
e.printStackTrace();
}
}
19.
public static File toFile(URL url)
说明:将file协议的URL文件路径,读取为文件
范例:
@Test public void TestToFile() { try { File urlFile = FileUtils.toFile(new URL("file:///E:/data/gpslog/msg_null.log"));
System.out.println(FileUtils.readFileToString(urlFile)); } catch (Exception e) { e.printStackTrace(); } }</pre>
20.
public static URL[] toURLs(File[] files) throws IOException
说明:依据文件数组生成对应的URL数组
范例:
@Test public void TestToFile() { try { File[] files = new File[] { FileUtils.getFile("E:/data/gpslog/msg_null.log") };
URL[] urls = FileUtils.toURLs(files); for (URL url : urls) { System.out.println(url.toString()); } } catch (Exception e) { e.printStackTrace(); } }</pre>
输出:file:/E:/data/gpslog/msg_null.log
21.
public static void copyFileToDirectory(File srcFile, File destDir) throws IOException
说明:将文件拷贝一份到目标目录
范例:
@Test
public void TestCopyFileToDirectory() {
try {
FileUtils.copyFileToDirectory(FileUtils.getFile("E:/data/gpslog/msg_null.log"),
FileUtils.getFile("E:/data/gpslog2"));
} catch (Exception e) {
e.printStackTrace();
}
}
30W年薪的人工智能工程师只是“白菜价”?
人工智能技术向前发展,也必然会出现一些岗位被人工智能取代,但我们相信,随着人工智能的发展,会有更多的新的、属于未来的工作岗位出现,是社会发展的必然产物,我们能做的也许只能是与时俱进了
- 2017-04-19 17:13
- 浏览 2573
- 评论(0)
<li>分类:<a href="http://www.iteye.com/blogs/category/industry">行业应用</a></li> <li class="last"><a href="http://www.iteye.com/wiki/blog/2370084" target="_blank" class="more">查看更多</a></li> </ul>
评论