zoukankan      html  css  js  c++  java
  • io流

    输入:从存储数据的设备中取出数据存向内存中

    输出:从内存中把数据存储到设备中

    File类:表示文件和目录

    成员变量:

    String s1 = File.pathSeparator;//输出一个分号;
                    System.out.println(s1);
                    //与系统有关的 名称 分隔符
                    String s2 = File.separator;//输出一个反斜杠
                    System.out.println(s2);

    构造方法:

    //不会判定你写的这个文件是否存在
            //传字符串
            File f = new File("d:\12\123\abc.java");
            System.out.println(f);
            //传两个字符串
            String parent = "d:\12\123";
            String child = "abc.java";
            File f2 = new File(parent,child);
            System.out.println(f2);
            //传一个file对象,一个字符串
            File p = new File("d:\12\123");
            String c = "abc.java";
            File f3 = new File(p,c);
            System.out.println(f3);

    创建文件及目录和多个目录:

    //创建文件
            File f = new File("d:\12\xxx.java");
            f.createNewFile();
            //创建文件夹
            File f1 = new File("d:\12\aaa");
            f1.mkdir();
            //创建多个文件夹
            File f2 = new File("d:\12\aaa\bbb\ccc");
            f2.mkdirs();

    文件删除(目录中有文件的话,不能直接删除):

    File f = new File("d:\12\xxx.java");
            f.delete();

    获得文件名称,路径,大小:

    File f = new File("d:\ruanjian\code2\jdk1.8.0_161\src.zip");
            //获取文件或文件夹的名称
            System.out.println(f.getName());
            //相当于toString方法,getParent()方法获得上一级目录的路径
            System.out.println(f.getPath());
            //获得文件或文件夹的大小,获得是文件的字节数KB
            System.out.println(f.length());

    相对路径及绝对路径:

    //相对路径,获得工程根路径+你的相对路径
            File f = new File("src");
            System.out.println(f.getAbsolutePath());

    文件及目录是否存在,是否为文件或者目录:

    //是否存在
            File f = new File("d:\12\aaa");
            System.out.println(f.exists());
            //是否是文件夹
            System.out.println(f.isDirectory());
            //文件对象是否是文件
            System.out.println(f.isFile());

    listFiles()方法:获得指定目录(文件夹)中所有的文件和目录

    指定的文件夹必须存在,必须是文件夹才行

     过滤器:要自定义一个过滤器类实现fileFilter类,并重写accept()方法

    public class MyFilter implements FileFilter {
    
        @Override
        public boolean accept(File pathname) {
            // TODO Auto-generated method stub
            String name = pathname.getName();
            boolean flag = name.endsWith(".java");
            return flag;
        }
    }
    public static void main(String[] args) {
            File f = new File("d:\12");
            getFile(f);
        }
        public static void getFile(File f){
            File[] file = f.listFiles(new MyFilter());
            for(File f1:file){
                System.out.println(f1);
            }
        }

    递归:方法自己调用自己

    递归一定要有出口,否则内存溢出;递归次数不能太多,否则内存溢出

     打印目录中所有的文件:

    public static void getAllFile(File f){
            File[] file = f.listFiles();
            for(File f1:file){
                if(f1.isDirectory()){
                    getAllFile(f1);
                }else{
                System.out.println(f1);
                }
            }
        }

    查看目录下所有的java文件

    public class MyFilter implements FileFilter{
    
        @Override
        public boolean accept(File pathname) {
            // TODO Auto-generated method stub
            if(pathname.isDirectory()){
                return true;
            }
            return pathname.getName().toLowerCase().endsWith(".java");
        }
    }
    public static void main(String[] args) {
            File file = new File("d:\12");
            method(file);
        }
        public static void method(File file){
            File[] files = file.listFiles(new MyFilter());
            for(File f:files){
                if(f.isDirectory()){
                    method(f);
                }else{
                    System.out.println(f);
                }
            }
        }
  • 相关阅读:
    HDU 1717 小数化分数2(最大公约数)
    C#计数器
    C#计数器
    c#计算器
    c#计算器
    PHP 错误与异常 笔记与总结(18 )页面重定向实现
    想使用 MongoDB ,你应该了解这8个方面!
    大数据代表未来,投资力度增强
    统计学和数据挖掘的异同探讨
    统计学和数据挖掘的异同探讨
  • 原文地址:https://www.cnblogs.com/yelena-niu/p/9224825.html
Copyright © 2011-2022 走看看