zoukankan      html  css  js  c++  java
  • I/O流——File类及使用

    I/O框架介绍

    I/O是计算机输入/输出的接口。Java的核心库java.io提供了全方面的I/O接口,包括:文件系统的操作,文件读写,标准设备的输出等。

    File类及使用

    ①   一个File类的对象,表示了磁盘上的文件或目录。

    ②   File类提供了与平台无关的方法来对磁盘上的文件或目录进行操作。

    ③   File类直接处理文件和文件系统。比如删除文件,获取文件长度大小信息。

    ④   File类没有提供方法从文件中读取或向文件中存储信息。

    ⑤   构造方法:

    a)         File(String directoryPath)

    b)         File(String directoryPath,String filename)

    c)         File(File dirObj,String filename)

    ⑥   File定义了获取File对象标准属性的方法。

    ⑦   部分File类常用方法:

    a)         public String getName()

    b)         public String getParent()

    c)         public File getParentFile()

    d)         public String getAbsolutePath()

    e)         public boolean exists()

    f)          public File[] listFile()

    g)         public boolean isDirectory()

    h)         public boolean isFile()

    i)           public long length()

    j)           boolean delete()

    k)         boolean mkdir()

    先在d盘下创建一个名为doc的文件夹,文件夹内创建一个txt文本文件

    1         File file = new File("d:\doc");// windows下使用\或/,linux下使用/
    2         System.out.println(file.getAbsolutePath());// 返回此抽象路径名的绝对路径名字符串
    3         System.out.println(file.getParent());// 获取上一级目录的字符串
    4         System.out.println(file.isDirectory());// 判断路径名表示的文件是否是一个目录
    5         System.out.println(file.isFile());// 判断路径名表示的文件是否是一个标准文件
    6         System.out.println(file.exists());// 判断抽象路径名表示的文件或目录是否存在
    7         System.out.println(file.length());// 返回由此抽象路径名表示的文件的长度
    8         System.out.println(file.delete());// 删除此抽象路径名表示的文件或目录--若目录下存在文件则不可删除

    输出结果

    d:doc
    d:
    true
    false
    true
    0
    false

    创建目录及目录下创建文件

    1         File myFile = new File("d:\zhangsan");
    2         System.out.println(myFile.mkdir());// 创建不存在的目录
    3 
    4         File myFile2 = new File("d:\zhangsan\ceshi.txt");
    5         try {
    6             System.out.println(myFile2.createNewFile());// 创建指定目录下不存在的文件
    7         } catch (IOException e) {
    8             e.printStackTrace();
    9         }

    输出结果

    true
    true

    在zhangsan目录下的ceshi.txt中随意输入一些字符,再添加一张图片

    获取目录下所有的文件

    1         String[] files = myFile.list();// 获取目录下所有的文件
    2         for (String f : files) {
    3             System.out.println(f);
    4         }

    输出结果

    ceshi.txt
    tu.png

    返回所有以txt为后缀名的文件

     1         String[] files2 = myFile.list(new FilenameFilter() {
     2 
     3             @Override
     4             public boolean accept(File dir, String name) {
     5                 return name.endsWith(".txt");//返回所有以txt为后缀名的文件
     6             }
     7         });
     8         for (String f : files2) {
     9             System.out.println(f);
    10         }

    输出结果

    ceshi.txt

    获取目录中所有的文件,名称及大小

    1         File[] files3=myFile.listFiles();
    2         for(File f:files3){
    3             System.out.println(f.getName()+"--"+f.length());
    4         }

    输出结果

    ceshi.txt--140
    tu.png--73425

    返回目录下所有以txt为后缀名的文件,名称及大小

    方法一

     1         File[] files4=myFile.listFiles(new FilenameFilter() {
     2             
     3             @Override
     4             public boolean accept(File dir, String name) {
     5                 return name.endsWith(".txt");//返回目录下所有以txt为后缀名的文件
     6             }
     7         });        
     8         for(File f:files4){
     9             System.out.println(f.getName()+"--"+f.length());
    10         }

    输出结果

    ceshi.txt--140

    方法二

     1         File[] files5=myFile.listFiles(new FileFilter() {
     2             
     3             @Override
     4             public boolean accept(File pathname) {
     5                 return pathname.getName().endsWith(".txt");
     6             }
     7         });        
     8         for(File f:files5){
     9             System.out.println(f.getName()+"--"+f.length());
    10         }

    输出结果

    ceshi.txt--140

  • 相关阅读:
    右击DataGrilView行事件
    winForm textBox的数字输入验证
    C#获取本月开始日期和结束日期
    异步加载js文件并执行js方法:实现异步处理网页的复杂效果
    Windows Phone 7 IEnumerable<T>.Select和SelectMany的区别
    Windows Phone 7 Perst嵌入式数据库的学习
    Windows Phone 7 Coding4Fun的弹出框
    MVVM模式介绍
    Windows Phone 7 网络编程之天气预报应用
    Windows Phone 7 扩展TextBox控件为数字输入文本框
  • 原文地址:https://www.cnblogs.com/wzy330782/p/5470511.html
Copyright © 2011-2022 走看看