zoukankan      html  css  js  c++  java
  • File

    当需要把内存中的数据存储到持久化设备上这个动作称为输出(写)Output操作。

    当把持久设备上的数据读取到内存中的这个动作称为输入(读)Input操作。

    因此我们把这种输入和输出动作称为IO操作。

    通过构造方法创建File对象:

            //3种构造方法
            File file=new File("D:\io1227\b.txt");
            File file=new File("src");
            System.out.println(file);
            
            File file=new File("D:\io1227","a.txt");
            System.out.println(file);
            
            //File(String pathname, String child)
            //父路径固定,子路径可替换    更灵活
            File file=new File(new File("D:\io1228"),"a.txt");
            System.out.println(file);            
            // 与系统有关的路径分隔符
            //win  ;
            //linux  :
            System.out.println(File.pathSeparator);
            // 与系统有关的默认名称分隔符
            //win    
            //linux    /
            System.out.println(File.separator);

    File类的获取

            File file=new File("D:\io1227\a.txt");
            //获取绝对路径
            System.out.println(file.getAbsolutePath());
            //获取路径
            System.out.println(file.getPath());
            //获取文件名
            System.out.println(file.getName());
            //获取文件大小
            System.out.println(file.length());

    文件和文件夹的创建删除等

    public static void method01() throws IOException{
            File file=new File("D:\io1227\b.7z");
            //创建文件或文件夹
            boolean flag=file.createNewFile();
            System.out.println(flag);
        }
        public static void method02(){
            File file=new File("D:\io1227\b");
            //删除文件
            boolean flag=file.delete();
            System.out.println(flag);
            
        }
        public static void method03(){
            File file=new File("D:\io1227\a.txt");
            //判断该路径表示的文件或目录是否真实存在
            boolean flag=file.exists();
            System.out.println(flag);
            //判断该路径是否是文件夹
            boolean flag1=file.isDirectory();
            System.out.println(flag1);
            //判断该路径是否是文件
            boolean flag2=file.isFile();
            System.out.println(flag2);
        }
        public static void method04(){
            //File file=new File("D:\io1227\b.png");
            File file=new File("D:\io1227\a\b\c\d\e");
            //创建文件夹
            boolean flag=file.mkdirs();
            System.out.println(flag);    
        }
        //获取目录中的文件和文件夹
        public static void method05(){
            File file=new File("D:\io1227");
            String[] filenames=file.list();
            for(String f: filenames){
                System.out.println(f);
            }
        } 
        //获取目录中的文件和文件夹
        public static void method06(){
            File file=new File("D:\io1227");
            //File[] filenames=file.listFiles();
            //获取当前路径下的.txt文件
            File[] filenames=file.listFiles(new MyFileter());
            for(File f: filenames){
                System.out.println(f.getName()+"..."+f.length());
            }
        }

    文件过滤器

    MyFileter 
    public class MyFileter implements FileFilter{
    
        public boolean accept(File pathname) {
            //判断是否是txt结尾
            return pathname.getName().toLowerCase().endsWith(".txt");
        }
    
    }
    public static void main(String[] args) {
            //找到该路径下的所有txt文件
            File file=new File("D:\io1227");
            File[] files=file.listFiles(new MyFileter());
            for(File f:files){
                System.out.println(f);
            }
        }

    注意:在获取指定目录下的文件或者文件夹时必须满足下面两个条件

    1,指定的目录必须是存在的,

    2,指定的必须是目录。否则容易引发返回数组为null,出现NullPointerException

     

  • 相关阅读:
    Android ImageButton的背景(图片)大小
    Android 解决ListView中每一项与button冲突
    Android Drawable 关于selector中state_pressed="true"的位置顺序
    Android 虚拟机安装SD卡
    JavaC 编译目录下所有的UTF-8编码的java文件
    eclipse 或MyEclipse将工程进行移动的时候会对@Override报错的处理方法
    解决NetworkOnMainThreadException
    JavaSE GUI显示列表 JTable的刷新 重新加载新的数据
    SQL SERVER(MSSQLSERVER) 服务无法启用 特定服务错误:126
    QPushButton取消按压后文字下沉效果
  • 原文地址:https://www.cnblogs.com/longmingyeyu/p/12761885.html
Copyright © 2011-2022 走看看