美文网首页Java
Java IO流File基本操作

Java IO流File基本操作

作者: 一亩三分甜 | 来源:发表于2019-09-22 19:42 被阅读0次
import java.io.File;
public class FileDemo {
    public static void main(String[] args) {
       consMethod();
    }
    public static void consMethod()
    {
        //将a.txt封装成file对象,可以将已有的和未出现的文件或者文件夹封装成对象
        File f1 = new File("a.txt");
        File f2 = new File("\\abc","b.txt");
        File d = new File("\\abc");
        File f3 = new File(d,"c.txt");
        sop("f1:"+f1);
        sop("f2:"+f2);
        sop("f3:"+f3);
        File f4 = new File(File.separator+"abc"+File.separator+"zzz"+File.separator+"a.txt");
    }
    public static void sop(Object obj)
    {
        System.out.println(obj);
    }
}
//输出
f1:a.txt
f2:\abc/b.txt
f3:\abc/c.txt

File类常见方法:

  • 1 创建
    Boolen createNewFile():在指定位置创建文件,如果该文件已经存在,则不创建,返回false。和输出流不一样,输出流对象一建立创建文件。而且文件已经存在,会覆盖。
    boolean mkdir():创建文件夹。
    boolean mkdirs():创建多级文件夹。
import java.io.File;
import java.io.IOException;

public class FileDemo {
    public static void main(String[] args) throws IOException
    {
        method_1();
    }
    public static void method_1() throws IOException
    {
        File f = new File("file.txt");
        sop("create:"+f.createNewFile());
    }
    public static void sop(Object obj)
    {
        System.out.println(obj);
    }
}
//输出
create:true
Snip20190922_63.png
import java.io.File;
import java.io.IOException;

public class FileDemo {
    public static void main(String[] args) throws IOException
    {
        method_3();
    }
    public static void method_3() throws IOException
    {
        File f = new File("file.txt");
        //创建文件夹
        File dir = new File("abc\\kk\\a\\a\\aaa");
        sop("mkdir:"+dir.mkdir());
    }
    public static void sop(Object obj)
    {
        System.out.println(obj);
    }
}
//输出
mkdir:true
Snip20190922_67.png
import java.io.File;
import java.io.IOException;

public class FileDemo {
    public static void main(String[] args) throws IOException
    {
        method_4();
    }
    public static void method_4() throws IOException
    {
        File f = new File("file.txt");
        //创建文件夹s
        File dir = new File("abc"+File.separator+"kk"+File.separator+"aaa");
        sop("mkdir:"+dir.mkdirs());
    }
    public static void sop(Object obj)
    {
        System.out.println(obj);
    }
}
//输出
mkdir:true
Snip20190922_68.png
import java.io.File;
import java.io.IOException;

public class FileDemo {
    public static void main(String[] args) throws IOException
    {
        method_3();
    }
    public static void method_3() throws IOException
    {
        File f = new File("file.txt");
        //创建文件夹
        File dir = new File("abc"+File.separator+"kk"+File.separator+"aaa");
        sop("mkdir:"+dir.mkdir());
    }
    public static void sop(Object obj)
    {
        System.out.println(obj);
    }
}
//输出
mkdir:false
  • 2 删除
    boolean delete();删除失败返回false。
    void deleteOnExit();在程序退出时删除指定文件。
import java.io.File;
import java.io.IOException;

public class FileDemo {
    public static void main(String[] args) throws IOException
    {
        method_2();
    }
    public static void method_2() throws IOException
    {
        File f = new File("file.txt");
        //f.deleteOnExit();
        sop("delete:"+f.delete());
    }
    public static void sop(Object obj)
    {
        System.out.println(obj);
    }
}
//输出
delete:true
  • 3.判断
    boolean exists():文件是否存在
    isFile();
    isDirectory();
    isHidden();
    isAbsolute();
import java.io.File;
import java.io.IOException;

public class FileDemo {
    public static void main(String[] args) throws IOException
    {
        method_5();
    }
    public static void method_5() throws IOException
    {
        File f = new File("file.txt");
        sop("dir:"+f.isDirectory());
        sop("file:"+f.isFile());
    }
    public static void sop(Object obj)
    {
        System.out.println(obj);
    }
}
//输出
dir:false
file:true
import java.io.File;
import java.io.IOException;

public class FileDemo {
    public static void main(String[] args) throws IOException
    {
        method_6();
    }
    public static void method_6() throws IOException
    {
        File f = new File("file.txt");
        sop(f.mkdir());
        sop("create:"+f.createNewFile());
        sop("dir:"+f.isDirectory());
        sop("file:"+f.isFile());
        sop(f.isAbsolute());
    }
    public static void sop(Object obj)
    {
        System.out.println(obj);
    }
}
//输出
true
create:false
dir:true
file:false
false
  • 4 获取信息
    getName();
    getPath();
    getParent();

getAbsolutePath();
lastModified();
length();

import java.io.File;
import java.io.IOException;

public class FileDemo {
    public static void main(String[] args) throws IOException
    {
        method_7();
    }
    public static void method_7() throws IOException
    {
        File f = new File("file.txt");
        sop("path:"+f.getPath());
        sop("abspath:"+f.getAbsolutePath());
        sop("parent:"+f.getParent());//该方法返回的是绝对路径中的父目录。如果获取的是相对路径,返回null。如果相对路径中有上一层目录那么该目录就是返回结果。
    }
    public static void sop(Object obj)
    {
        System.out.println(obj);
    }
}
//输出
path:file.txt
abspath:/Users/Cloud/Documents/Java/WorkSpace/HelloWorld/file.txt
parent:null
import java.io.File;
import java.io.IOException;

public class FileDemo {
    public static void main(String[] args) throws IOException
    {
        method_8();
    }
public static void method_8() throws IOException
    {
        File f1 = new File("a.txt");
        File f2 = new File("d.txt");
        sop("rename:"+f1.renameTo(f2));

    }
    public static void sop(Object obj)
    {
        System.out.println(obj);
    }
}
//输出
rename:true
import java.io.File;

public class FileDemo0 {
    public static void main(String[] args) {
//        listRootsDemo();
        listDemo();
    }
    public static void listDemo()
    {
        File f = new File("file.txt");//调用list方法的file对象必须是封装了一个目录
        String[] names = f.list();
        for (String name:names)
        {
            System.out.println(name);
        }
    }
    public static void listRootsDemo()
    {
        File[] files = File.listRoots();
        for (File f :files)
        {
            System.out.println(f);
        }
    }
}
//输出
d.txt
d1.txt
d2.txt
Snip20190922_70.png

文件列表

  • 1.列出指定目录下的所有文件
import java.io.File;

public class FileDemo0 {
    public static void main(String[] args) {
        listDemo0();
    }
    public static void listDemo0()
    {
        File f = new File("/Users/Cloud/Documents/Java/WorkSpace/HelloWorld");//调用list方法的file对象必须是封装了一个目录
        String[] names = f.list();
        for (String name:names)
        {
            System.out.println(name);
        }
    }
}
//输出
file.txt
abc
out.txt
exception.log
demo.txt
.DS_Store
1.mp3
0.mp3
landscape.jpg
2.mp3
HelloWorld.iml
out
fos.txt
zz.txt
abc\kk\a\a\aaa
DateDemo.java
DateDemo_copy.txt
sysinfo.txt
buf.txt
log.txt
SystemDemo.java
d.txt
DateDemo_Copy0.txt
SystemDemo_copy.txt
d1.txt
1.png
d2.txt
.idea
src
  • 2.过滤指定后缀名文件
import java.io.File;
import java.io.FilenameFilter;

public class FileDemo0 {
    public static void main(String[] args) {
        listDemo1();
    }
    public static void listDemo1()
    {
        File f = new File("/Users/Cloud/Documents/Java/WorkSpace/HelloWorld");//调用list方法的file对象必须是封装了一个目录
        String[] arr = f.list(new FilenameFilter(){
            public boolean accept(File dir,String name)
            {
                return name.endsWith(".jpg");
            }
        });
        System.out.println("len:"+arr.length);
        for (String name:arr)
        {
            System.out.println(name);
        }
    }
}
//输出
len:1
landscape.jpg
  • 3.获取文件大小
import java.io.File;
import java.io.FilenameFilter;

public class FileDemo0 {
    public static void main(String[] args) {
        listDemo2();
    }
    public static void listDemo2()
    {
        File dir = new File("/Users/Cloud/Documents/Java/WorkSpace/HelloWorld");//调用list方法的file对象必须是封装了一个目录
        File[] files = dir.listFiles();
        for (File f : files)
        {
            System.out.println(f.getName()+"::"+f.length());
        }
    }
}
//输出
file.txt::160
abc::96
out.txt::15
exception.log::112
demo.txt::7
.DS_Store::6148
1.mp3::8098212
0.mp3::8098212
landscape.jpg::187678
2.mp3::8098212
HelloWorld.iml::486
out::96
fos.txt::5
zz.txt::11
abc\kk\a\a\aaa::64
DateDemo.java::524
DateDemo_copy.txt::524
sysinfo.txt::1858
buf.txt::24
log.txt::244790986
SystemDemo.java::1008
d.txt::90
DateDemo_Copy0.txt::524
SystemDemo_copy.txt::1008
d1.txt::5
1.png::187678
d2.txt::7
.idea::224
src::5600
Snip20190922_73.png

相关文章

  • Java IO流File基本操作

    File类常见方法: 1 创建Boolen createNewFile():在指定位置创建文件,如果该文件已经存在...

  • Java常用包的主要作用

    java.io io流相关操作java.nio 新io操作java.lang 核心功能包,线程,System,基本...

  • java_io

    java.io.File类的使用IO原理及流的分类  |---文件流   操作对象是文件     FileInp...

  • Java IO 第3篇:不能不懂的 IO 处理流

    不能不懂的 IO 处理流 我们在掌握了 File 类、字节流、字符流,学会了 IO 操作的套路之后,IO 操作基本...

  • 日常记忆之Java流,文件和IO

    Java流(Stream)、文件(File)和IO Java.io包几乎包含了所有操作输入、输出需要的类。所有这些...

  • Java-File类

    说到Java里的IO流,我们首先应当了解File类,此File类为java.io包下的类,用来操作文件和目录,但是...

  • Java基础知识16-I/O流2

    File 类 尽管 java.io 定义的大多数类用于操作流, 但 File 类却不是. File 类没有指定如何...

  • 字节流和字符流

    流的基本概念   在java.io包中File类是唯一一个与文件本身有关的程序处理类,但是File只能操作文件本身...

  • Java 学习笔记(14)—— 文件操作

    java文件操作主要封装在Java.io.File中,而文件读写一般采用的是流的方式,Java流封装在 java....

  • (四)IO流基础

    1、IO流基本介绍 Java是通过‘流’的方式对数据进行操作,而IO(Input Output)流就是用来处理设备...

网友评论

    本文标题:Java IO流File基本操作

    本文链接:https://www.haomeiwen.com/subject/qexuuctx.html