zoukankan      html  css  js  c++  java
  • File

    File

    java.io.File文件和目录路径名抽象表示形式. 目录也被叫做文件夹

    常用构造方法

    构造方法 说明
    File(String path) path是文件或者目录的路径

    注意: 如果new File(path)的时候, path路径一定要存在这个目录或文件

    常用方法

    返回值 方法 说明
    long length() 文件字节量
    boolean exists() 是否存在, 存在返回true
    boolean isFile() 是否为文件夹, 是就返回true
    boolean isDirectory() 是否为文件夹, 是返回true
    String getName() 获取文件/目录名称
    String getParent() 获取父目录的路径
    String getAbsolutePath() 获取文件完整路径(绝对路径)
    boolean createNewFile() 创建文件, 文件夹不存在会异常, 已存在返回false
    boolean mkdirs() 创建多级文件夹, 例如a/b/c, 已存在返回false
    boolean mkdir() 创建单层文件夹, 已存在返回false
    boolean delete() 删除文件, 删除空文件夹
    String[] list() 返回目录下的所有文件/目录名
    File[] listFile() 返回目录下所有的文件/目录的对象

    案例

    案例介绍: 使用递归的方法, 查询指定目录的大小

    public class Test6 {
    	public static void main(String[] args) {
    		String path = "C:\Users\zpk\Desktop\笔记"; // 指定目录
    		File f = new File(path);
    		System.out.println("
    总大小: " + method(f) + " 字节");
    	}
    
    	public static int method(File file) {		
    		File[] files = file.listFiles(); // 获取当前目录下所有的文件和文件夹
    		int s = 0; // 记录大小
    		for (File f : files) { // 遍历目录 
    			if (f.isDirectory()) { // 如果 是个目录, 继续调用method()
    				System.out.println("
    进入 <" + f.getName() + "> 文件夹");
    				s += method(f);
    			} else { // 如果是个文件, 累计大小
    				s += f.length();
    				System.out.println("--->获取 <" + f.getName() + "> 的文件大小: [" + f.length() + " 字节]");
    			}
    		}
    		return s; // 返回大小
    	}
    }
    

    递归调用确实方便了代码的编写, 但是效率非常低. 递归一般也很少使用, 如果循环能解决的问题, 绝对不用递归

  • 相关阅读:
    自动化测试-短信验证码处理
    使用HttpClient调用WebAPI接口,含WebAPI端示例
    C#使用HttpClient上传文件并附带其他参数
    WebClient和HttpClient, 以及webapi上传图片
    C#-微信公众平台接口-上传临时素材
    字节组数(二进制流)、Base64、图片(文件)、二进制相互之间转换
    理解并设计rest/restful风格接口
    使用RESTful风格开发
    GitHub OAuth 第三方登录示例教程
    OAuth 2.0 的四种方式
  • 原文地址:https://www.cnblogs.com/zpKang/p/12901568.html
Copyright © 2011-2022 走看看