测试 File and LinkedHashMap 示例
来源:互联网 发布:网络维护费用清单 编辑:程序博客网 时间:2024/06/05 21:15
- 具体示例代码如下:
package se;import java.io.File;import java.io.FileFilter;import java.io.FileInputStream;import java.io.IOException;import java.util.Arrays;import java.util.HashMap;import java.util.LinkedHashMap;import org.junit.Test;public class FileAndLinkedHashMap { /** * LinkedHashMap 指有序的 HashMap,有序指的是:存放元素的顺序 */ @Test public void testLinkedHashMap(){ HashMap<String, Object> linkedHashMap = new LinkedHashMap<String, Object>(); linkedHashMap.put(null, null); System.out.println(linkedHashMap.get("null")); } /** * File 表示文件 或者 目录 * 层级分隔符不要直接使用 斜杠(/),而是使用 File.separator 常量 * file.isFile(): 判断是否为 文件 * file.length(): 表示文件占用的 字节量 * file.exists(): 文件或者目录是否存在 * file.createNewFile(): 创建一个新的、空的文件 * file.delete(): 删除文件 或者 目录, 如果删除的是 目录,那么该目录必须为空目录,才可以删除 * file.isDirectory(): 判断是否为目录 * file.mkdir(): 创建当前目录 * file.mkdirs(): 创建当前目录以及不存在的父目录 * file.list(): 返回 目录中 所有的文件名和目录名组成的数组 * file.listFiles(): 返回 目录中 路径名 指代的文件和目录 组成的数组 * file.fileFilter(): 对文件的路径名 进行过滤 */ @Test public void testFile() throws Exception{ File file = new File("G:" + File.separator + "siteAccount.txt"); FileInputStream fis = new FileInputStream(file); byte[] byteArr = new byte[(int) file.length()]; fis.read(byteArr); fis.close(); System.out.println(new String(byteArr, "gbk")); System.out.println("is File:" + file.isFile()); System.out.println("file length:" + file.length()); System.out.println("file exists:" + file.exists()); File file2 = new File("G:" + File.separator + "siteAccount2.txt"); System.out.println("file createNewFile:" + file2.createNewFile()); System.out.println("file delete:" + file2.delete()); System.out.println("file isDirectory:" + file.isDirectory()); File file3 = new File("G:" + File.separator + "siteAccount3" + File.separator + "siteAccount4"); System.out.println("file mkdir:" + file3.mkdir()); System.out.println("file mkdir:" + file3.mkdirs()); } @Test public void testFileListMethodAndListfilesMethod() throws IOException{ /*File file = new File("G:" + File.separator + "siteAccount3" + File.separator + "siteAccount4"); System.out.println("file mkdirs: " + file.mkdirs()); File file2 = new File("G:" + File.separator + "siteAccount3" + File.separator + "file1.txt"); if(!file2.exists()){ file2.createNewFile(); }*/ File file = new File("G:" + File.separator + "siteAccount3"); File[] listFilterFiles = file.listFiles(new FileFilter(){ @Override public boolean accept(File pathname) { String fileName = pathname.getName(); if(fileName.endsWith("2.txt")){ return true; }else{ return false; } }}); System.out.println("file filter: " + Arrays.toString(listFilterFiles)); System.out.println("file list: " + Arrays.toString(file.list())); System.out.println("file listFiles: " + Arrays.toString(file.listFiles())); /* * file filter: [G:\siteAccount3\file2.txt] * file list: [file1.txt, siteAccount4] * file listFiles: [G:\siteAccount3\file1.txt, G:\siteAccount3\siteAccount4] */ } /** * 删除目录里 所有文件和目录 以及最外层目录本身 * 思路: * 1.先删除目录里 所有文件, * 2.再删除 空目录 * 3.目录里包含目录,使用 递归 */ public void deleteDirectory(String path){ File file = new File(path); if(file.isDirectory()){ String[] list = file.list(); if(list.length > 0){ String innerPath = ""; for(String fileName: list){ if(path.endsWith(File.separator)){ innerPath = path + fileName; }else{ innerPath = path + File.separator + fileName; } deleteDirectory(innerPath); } // 删除空目录 file.delete(); }else{ file.delete(); } }else{ file.delete(); } } @Test public void testDeleteDirectory() throws IOException{ String path = "G:" + File.separator + "test2"; deleteDirectory(path); }}
阅读全文
0 0
- 测试 File and LinkedHashMap 示例
- 测试 Queue and Deque 示例
- LinkedHashMap and LinkedHashSet
- SelectItem and LinkedHashMap
- Difference between HashMap, LinkedHashMap and TreeMap
- LinkedHashMap
- LinkedHashMap
- LinkedHashMap
- LinkedHashMap
- LinkedHashMap
- LinkedHashMap
- LinkedHashMap
- LinkedHashMap
- LinkedHashMap
- LinkedHashMap
- LinkedHashMap
- LinkedHashMap
- LinkedHashMap
- Yii乐观锁的使用及原理
- error C2872: “CPoint”: 不明确的符号
- [收藏]可能是史上最全免费编程书籍
- Java数据结构和算法——数组、单向链表、双向链表
- imagesview
- 测试 File and LinkedHashMap 示例
- 双指针
- Ajax
- Spring单元测试类ApplicationTests错误
- python_configpaser
- linux下nfs服务器的安装和配置
- 【HDU
- Oracle 和 Mysql 的分页语句
- C++程序员学Java系列之二六:数据结构之枚举(Enumeration)