File 类 输出流

Posted xqls1573

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了File 类 输出流相关的知识,希望对你有一定的参考价值。

1 File 类

? 1.1 概述 java.io.File 是文件和目录路径名的表示 主要用于文件和目录的创建 查找 删除等操作

? 1.2 构造方法

?

**File**(File parent, String child) 根据 parent 抽象路径名和 child 路径名字符串创建一个新 File 实例。

**File**(String pathname) 通过将给定路径名字符串转换为抽象路径名来创建一个新 File 实例。

**File**(String parent, String child) 根据 parent 路径名字符串和 child 路径名字符串创建一个新 File 实例。

2 IO 流

? 2.1 IO概述

? 把数据的的传输 这种流动 按照流动的方向 以内存为基准 分为input 和output 数据流向内存----》输入流 流出内存就是输出流

? java中 I/O操作 在io 包下 进行输入和输出的操作 输入 ----------》i--->读取数据

? 输出 也叫做写出数据

? 2.2 IO分类

? 根据数据的流向 输入流 和输出流

? 输入流: 把数据从其他设备 读取到内存中

? 输出流: 把数据从内存写出到其它设备

? 根据数据类型的分为 字节流 字符流

? 字节流 以字节为单位 读写数据的流

? 字符流 以字符为单位 读写数据流

2.3 字节流

? 一切皆为字节

? 图片 视屏 以二进制的方式存储 一个一个字节 字节流可以读任何文件

2.4 字节输出流 OutputStream----->FileOutputStream

? close();

? flush(); 刷新

? write(byte[] byte);

FileOutputStream(File file);

FileOutputStream(String string);

 

 

 

1* File  类的获取功能

 *   getAbsolutePath() ;返回路径

 *   getPath()---->File转成字符串

 *   getName()   返回文件或者路径的名称

 *   length()  文件的长度文件夹返回0  文件返回文件字节大小

 

2 * File   类的创建和删除功能

 *      creatNewFile();   ----->创建空文件 不是文件夹

 *      delete();  删除

 *      mkdir();  创建目录

 *      mkdirs();多层

 */

 3*   File类  遍历

 *   list();   --->返回的是String数组   表示该目录下所有子文件

 *   listFiles()---》返回的File的数组   表示该目录下所有子文件 包含文件地址

 

4、输出流 FileOutputStream(路径);

FileOutputStream fos = new FileOutputStream(路径);
fos.write(字节数组);
fos.close();关闭

 

 

 

* File  类的获取功能

 *   getAbsolutePath() ;返回路径

 *   getPath()---->将File转成字符串

 *   getName()   返回文件或者路径的名称

 *   length()  文件的长度文件夹返回0  文件返回文件字节大小

 

 

public class Demo03File {

    public static void main(String[] args) {

        show01();

    }

    private static void show04(){

        File f = new File("D:\\1.jpg");

        File f1 = new File("D:\\qq");

        long length = f.length();

        long length1 = f1.length();

 

        System.out.println(length);

        System.out.println(length1);

 

    }

    private static void show03(){

        File f = new File("D:\\IdeaProjects\\lijun\\a.txt");

        String name = f.getName();

        System.out.println(name);

        File f1 = new File("D:\\IdeaProjects\\lijun");

        String name1 = f1.getName();

        System.out.println(name1);

 

    }

    private static void show02(){

        File f = new File("D:\\IdeaProjects\\lijun\\a.txt");

        File f1 = new File("a.txt");

        String path = f.getPath();

        String path1 = f1.getPath();

        System.out.println(path);

        System.out.println(path1);

    }

    private static void show01(){

        File f = new File("D:\\IdeaProjects\\lijun\\a.txt");

        File f1 = new File("a.txt");

        String absolutePath = f.getAbsolutePath();//该方法获得是绝对路径

        String absolutePath1 = f1.getAbsolutePath();

 

        System.out.println(absolutePath);

        System.out.println(absolutePath1);

    }

}

 

 

 

 * File   类的创建和删除功能

 *      creatNewFile();   ----->创建空文件 不是文件夹

 *      delete();  删除

 *      mkdir();  创建目录

 *      mkdirs();多层

 */

public class Demo04File {

    public static void main(String[] args) throws IOException {

        show03();

    }

    //删除  delete

    private static void show03(){

        File f=new File("D:\\IdeaProjects\\lijun\\bobo");

        boolean delete = f.delete();

        System.out.println(delete);

 

    }

    // 创建文件夹

    private static void show02() throws IOException {

        File f=new File("D:\\IdeaProjects\\lijun\\ruirui");

        boolean mkdir = f.mkdir();

        System.out.println(mkdir);

        File f1=new File("D:\\IdeaProjects\\lijun\\bobo\\ruiruir\\111\\2222");

        File f2=new File("D:\\IdeaProjects\\lijun\\bobo\\ruiruir\\111\\2222\\a.txt");

        boolean mkdirs = f1.mkdirs();

        System.out.println(mkdirs);

        f2.createNewFile();

    }

    // creatNewFile();  不能创建文件夹  当文件存在的时候不在创建

    private static void show01() throws IOException {

        File f1 = new File("D:\\IdeaProjects\\lijun\\1.txt");

        boolean newFile = f1.createNewFile();

        System.out.println(newFile);

        File f2 = new File("D:\\1.txt");

        boolean newFile1 = f2.createNewFile();

        System.out.println(newFile1);

    }

}

 

 

 *   File类  遍历

 *   list();   --->返回的是String数组   表示该目录下所有子文件

 *   listFiles()---》返回的File的数组   表示该目录下所有子文件 包含文件地址

 */

public class Demo05File {

    public static void main(String[] args) {

        show02();

    }

    private static void show02(){

        File f = new File("C:\\Windows");

        File[] files = f.listFiles();

        System.out.println(files.length);

        for(File ff:files){

            System.out.println(ff);

        }

    }

    private static void  show01(){

        File f = new File("D:\\IdeaProjects\\lijun\\day01Object\\src");

        String[] list = f.list();

        for(String fileName:list){

            System.out.println(fileName);

        }

    }

}

 

输出流 FileOutputStream(路径);

FileOutputStream fos = new FileOutputStream(路径);
fos.write(字节数组);
fos.close();关闭

public static void main(String[] args) throws IOException {
    byte []bytes="HelloWorld".getBytes();
    File file = new File("E:\\aaaaaaa\\HelloWorld03.txt");
    boolean newFile = file.createNewFile();
    FileOutputStream fos = new FileOutputStream(file);
    fos.write(bytes);
    fos.close();
}

 

 

以上是关于File 类 输出流的主要内容,如果未能解决你的问题,请参考以下文章

从零开始的Java开发1-6-4 Java输入输出流:File类绝对路径和相对路径字节流缓冲流字符流对象序列化

File 类 输出流

JAVA基础之IO流

IO流和File

Java输入输出流(NIO)-----文件类File详解

Java笔记:Java 流(Stream)文件(File)和IO