5.4Java File类数据源

5.4Java File类数据源

Java中的数据源和文件

使用File类来表示,表示文件、文件夹。

文件可能存在可能不存在

File代表的是Java程序和文件建立了一个练习,因为Java的底层是虚拟机,文件存储在硬盘上,所以Java是通过虚拟机和存储在硬盘的文件建立练习

Javafield概要

Modifier and TypeField描述
static String pathSeparator 路径分隔符---与系统相关的路分隔符字符,为方便起见,表示为字符串
static char pathSeparatorChar 与系统相关的路径分隔符
static String separator 名称分隔符---与系统相关的默认名称 - 分隔符字符,以方便的表示为字符串
static char separatorChar 与系统相关的默认名称分隔符

这些都是类常量

第二步找构造器:任何一个类里面都有构造方法和构造器

特点:

  • api接口权限 > default

  • 有构造器--->可以直接实例化对象

  • 没有构造器

    • 工具类--->类名.方法调用(里面的属性和方法都是类方法(用static修饰))

    • 静态方法--->有方法的返回值是这个对象的--->Runtime类有getRuntime返回类的实例,调用方法是Runtime.方法名调用

第三步找方法:任何一个方法关注方法的名称(猜功能)、形参、看看源码、关注返回值---类方法还是实例方法

小结

  • 关注类的继承体系

  • 看构造器

    • 有---直接调用

      • 静态方法

      • 成员方法

  • 关注方法

    • 关注方法名

    • 关注形参

    • 关注返回值类型---如何接收

    • 关注方法类型

拼接File路径名称的几种方法:

package ioStudy;

import java.io.File;

/**
* 测试File里面的方法
* @author Lucifer
*/
public class TestIoNo1 {
   /**
    * 构建File对象
    * @param args
    */
   public static void main(String[] args) {
       String path = "D:/workspace/practice/main/java/ioStudy/Trump.jpg";

       //构造File对象---直接用路径构建
       File src = new File(path);
       System.out.println(src.length());

       //构建File对象---父子构建
       src = new File("D:/workspace/practice/main/java/ioStudy","Trump.jpg");
       src = new File("D:/workspace/practice/main/java","ioStudy/Trump.jpg");
       System.out.println(src.length());

       //构建File对象---父对象,子名称
       src = new File(new File("D:/workspace/practice/main/java/ioStudy"),"Trump.jpg");
       System.out.println(src.length());
  }
}

构建File对象:---通过相对路径or绝对路径or父路径

package ioStudy;

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

/**
* 测试其他信息方法
* length()方法--->字节数(确保是文件才能返回,返回值类型是Long类型)
* 1.如果是文件夹---返回0
* 2.如果是没有这个文件---返回0
* createNewFile()--->创建文件的方法--->不存在才创建,存在则返回空
* delete()--->删除已经存在的文件
* @author Lucifer
*/
public class TestIoNo4 {
   public static void main(String[] args) throws IOException {

       /*新建File对象*/
       File src = new File("D:/workspace/practice/main/java/ioStudy/Trump.jpg");

       //测试length()方法--->先判断在返回长度
       src = new File("D:/workspace/practice/main/java/ioStudy");
       if (src == null || !src.exists()){
           throw new RuntimeException("文件路径异常");
      }else {
           if (src.isFile()){
               //返回文件长度--->long类型
               System.out.println("长度:" + src.length());
          }else {
               System.out.println(src.length());
          }
      }

       //测试createNewFile方法
//       src = new File("D:/workspace/practice/main/java/ioStudy/Test.md");
       src = new File("D:/workspace/practice/main/java/ioStudy/config.md"); //文件名称不能和操作系统的关键字重合
       boolean flag = src.createNewFile();
       System.out.println(flag);

       //分隔符
       System.out.println("----------");

       //测试delete方法
       flag = src.delete();
       System.out.println(flag);
  }
}

 

posted @ 2021-05-06 18:51  俊king  阅读(49)  评论(0编辑  收藏  举报