java枚举类是什么_Java学习 枚举类 File类 IO

本文详细介绍了Java中的枚举类及其使用,重点讲解了File类的API,包括文件的创建、读写、权限检查等操作。同时,深入探讨了IO流的概念,包括输入流、输出流、字节流和字符流的分类及功能,展示了字节输入流和输出流的使用示例。
摘要由CSDN通过智能技术生成

f38e219238d3b1edbcc6a1406f74640a.png

枚举类

枚举类: 定义一种事物的所有可能|情况

定义enum定义枚举,不再使用class

枚举类也是类,所有的枚举类,都会隐式的继承自java.lang.Enum类

枚举类中的每一个字段,都是该类的一个实例,获取字段枚举类名.字段名 ,字段默认修饰符为public static final


File类

File 类 文件和目录路径名的抽象表示形式。

常见用法:

(三种命名)

//File(String pathname) 根据路径字符串创建一个file对象 ***

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

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

boolean canExecute()

测试应用程序是否可以执行此抽象路径名表示的文件。

boolean canRead()

测试应用程序是否可以读取此抽象路径名表示的文件。

boolean canWrite()

测试应用程序是否可以修改此抽象路径名表示的文件。

boolean setReadOnly()

标记此抽象路径名指定的文件或目录,从而只能对其进行读操作。

(新建文件)

createNewFile() 不存在创建新文件 文件夹不存在创建不了 ***

(新建文件夹)

mkdir() *** 如果文件不存在那么不能建立

创建此抽象路径名指定的目录。

mkdirs() *** 如果文件不存在会自动帮忙建立

创建此抽象路径名指定的目录,包括所有必需但不存在的父目录。

String getParent() ***

返回此抽象路径名父目录的路径名字符串;如果此路径名没有指定父目录,则返回 null。

File getParentFile() 父路径的File对象 ***

static File createTempFile(String prefix, String suffix) 在默认临时文件目录中创建一个空文件,使用给定前缀和后缀生成其名称。

delete() 删除此抽象路径名表示的文件或目录。 ***

exists() 测试此抽象路径名表示的文件或目录是否存在。 ***


IO

IO流 :读写文件中的内容

流:一连串流动的数据,先入先出的特点,流就是管道

数据源:---> 目的地

流的分类:

流向分: (以程序为中心)

输入流

输出流

操作单元:

字节流:只能传输字节型的数据 ******

字符流:便于用户识别,只能传输纯文本的数据

功能分:

节点流:数据从数据源直接到目的地

功能流:提高节点流功能或性能 功能流(节点流)

流的分类之间都是相辅相成的

http://java.io包下的内容-->流...

IO分类主要为输入和输出两种:

输入流:

分类 : 字节流 输入流 节点流

InputStream 字节输入流 此抽象类是表示字节输入流的所有类的超类。

FileInputStream 文件字节输入流 FileInputStream 从文件系统中的某个文件中获得输入字节

举例:

//1.指明数据源 文件的位置 -->表示一个文件

File src=new File("D:/test.txt");

//2.选择流 FileInputStream(File file)

InputStream is=new FileInputStream(src);

//3.读入 int read() 从此输入流中读取一个数据字节 如果读不到返回-1,如果有数据,字符的字节表现形式

(读入一个字符)

//重读读入:每次只读一个字节的数据

int num=-1;

while((num=is.read())!=-1){

System.out.println((char)num);

}

(读入多个)

//int read(byte[])

byte[] car=new byte[3];

int len=-1;

while((len=is.read(car))!=-1){

System.out.println(new String(car,0,len));

}

//4.关闭

is.close();

输出流

字节输出流 OutputStream

文件字节输出流 FileOutputStream 字节流 输出流 节点流

每次写出数据默认覆盖,构造器中第二个参数可以设置true追加,false不追加-->默认false

举例:

//1.建立联系

File dest=new File("D:/haha.txt"); //输出流文件本身不存在,系统会自动创建,路径不存在,需要自己手动创建

//2.创建流

OutputStream os=new FileOutputStream("D:/haha.txt",true);

每次写出数据默认覆盖,构造器中第二个参数可以设置true追加,false不追加-->默认false

//3.写出

(写出一个)

void write(int b) 将指定字节写入此文件输出流。

os.write(97);

(写出多个)

每次写出一个字节的数据效率低,想要一次写出多个 字节数组

创建字节数组

String str="你好就要,要过的比我好!!!";

byte[] car=str.getBytes();

//4.刷出

os.flush();

//5.关闭

os.close();

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值