文件入门知识

文件基础

在这里插入图片描述
那什么是文件流呢?
在这里插入图片描述
如何理解?
1.我们要将文件中的数据通过输入流传到程序(内存)中,其逆过程就是输出流。
2.形象化理解
在这里插入图片描述

创建文件

如果你对文件的输入输出流已经有了基本的认知,那么我们就结合以上知识来创建文件

创建文件的三种方式
1.new File(String pathname)
2.new File(File parent,String child)根据父目录文件+子路径构建
3.new File(String parent,String child)//根据父目录+子路径构建

方式一

import java.io.File;                            
import java.io.IOException;                     
                                                
//演示创建文件                                        
public class FileCreate01 {                     
    public static void main(String[] args) {    
          create01();                           
    }                                           
     //方式一 new File(String pathname)            
    public static void create01(){              
        String filePath="e:\\news1.txt";        
        File file1=new File(filePath);          
                                                
        try {                                   
            file1.createNewFile();              
            System.out.println("文件一创建成功");      
        } catch (IOException e) {               
            e.printStackTrace();                
        }                                       
    }                                           

1.直接写一个static方法,直接调用
2.创建一个文件filePath,注意必须使用createNewFile()方法,原因如下
在这里插入图片描述
3.创建文件时可能会发生IOException异常,直接try…catch…
4.打印提示信息,表明文件创建成功,如下图
在这里插入图片描述
在这里插入图片描述

方式二

//方式二 new File(File parent,String child)根据父目录文件+子路径构建
//e:\\news2.txt                                      
public static void create02(){                       
    File parentFile=new File("e:\\");                
    String fileName1="news2.txt";                    
    File file2=new File(parentFile,fileName1);       
    try {                                            
        file2.createNewFile();                       
        System.out.println("文件二创建成功");               
    } catch (IOException e) {                        
        e.printStackTrace();                         
    }                                                
}                                                    

1.其实方式二只是将一个完整的路径进行了拆分,分成父目录文件和子路径两部分,但本质不变

方式三

//方式三 new File(String parent,String child)//根据父目录+子路径构建 
public static void  create03(){                         
    String parentPath="e:\\";                           
    String fileName2="news3.txt";                       
    File file3=new File(parentPath,fileName2);          
    try {                                               
        file3.createNewFile();                          
        System.out.println("文件三创建成功");                  
    } catch (IOException e) {                           
        e.printStackTrace();                            
    }                                                   
                                                        
}                                                       

1.方式三与方式二也只是形参发生了略微的变化,由刚才的父目录文件变成了父目录,父目录本质就是文件夹(是当前文件夹的上一层文件夹

获取文件信息

在这里插入图片描述
代码如下–>

import java.io.File;

//目的:获取文件信息
public class FileCreate02 {
    public static void main(String[] args) {
        info();
    }
    public static void info(){
        //先创建文件对象
        File file1=new File("e:\\news1.txt");
        //调用相应的方法,得到对应信息
        System.out.println("文件名="+file1.getName());
        System.out.println("绝对路径="+file1.getAbsolutePath());
        System.out.println("文件父目录="+file1.getParent());
        System.out.println("文件大小(字节)="+file1.length());//一个汉字三个字节,一个字母一个字节
        System.out.println("文件是否存在="+ file1.exists());
        System.out.println("是否为文件="+file1.isFile());
        System.out.println("是否为目录="+file1.isDirectory());

    }

}

输出结果如下
在这里插入图片描述
1.判断文件存在,是否为文件,是否为目录的方法返回值都是boolean
2.文件大小此处为0,(因为我什么都没写),如果写了,请注意,字母算一个字****符,汉字算三个
在这里插入图片描述

在这里插入图片描述

—————————————————————————————————

在这里插入图片描述
在这里插入图片描述

目录操作及文件删除

1.mkdir()创建一级目录-------boolean
2.mkdirs()创建多级目录--------boolean

判断d:\news1.txt是否存在,存在就删除,不存在显示提示信息

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

//目的:文件目录的操作与删除
public class FileCreate03 {
    public static void main(String[] args) {
        m1();
    }
    //判断d:\\news1.txt是否存在,存在就删除
    public static void m1(){
        String filename="e:\\news1.txt";
        File file=new File(filename);
        if(file.exists()){
            if(file.delete())
            System.out.println("删除成功");
            else
                System.out.println("删除失败");
        }else{
            System.out.println("文件不存在");
        }
    }

注意:delete()方法负责文件的删除

判断e:\news4.txt是否存在,存在提示已存在,不存在则创建

 public static void m2(){
        String directoryPath="e:\\news4.txt";
        File file=new File(directoryPath);
        if(file.exists()){
            System.out.println("改文件存在");
        }else{
            if(file.mkdirs()){//创建一级目录使用mkdir(),创建多级目录使用mkdirs()
                System.out.println("创建成功");
            }else{
                System.out.println("创建失败");
            }
        }
    }
}

小总结
1.以上就是文件的入门知识啦,首先了解什么是文件,它的作用是什么,如何创建文件,获取文件信息,对目录进行操作…
2.文件这块的内容并不涉及太多编程思维,更多的是需要理解原理,会使用一些常见的方法
3.下一期我们将深入学习IO流,包括字符输入流,字符输出流,字节输入流,字节输出流…
在这里插入图片描述

  • 4
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值