学习JavaEE的日子 Day33 File类,IO流

Day33

1.File类

File是文件和目录路径名的抽象表示

File类的对象可以表示文件:C:\Users\Desktop\hhy.txt

File类的对象可以表示目录路径名:C:\Users\Desktop

File只关注文件本身的信息(文件名、是否可读、是否可写…),而不能操作文件里面的内容

对文件里的数据进行操作的是:IO流

需求1:通过程序,获取已知文件的信息

public class Test01 {
	public static void main(String[] args) {
		
		//创建file对象(java中两个\\才是\)
		File file = new File("C:\\Users\\何小宝\\Desktop\\hhy.txt");
		
		System.out.println("获取文件路径:" + file.getAbsolutePath());
		System.out.println("获取文件名:" + file.getName());
		System.out.println("获取文件是否可读:" + file.canRead());
		System.out.println("获取文件是否可写:" + file.canWrite());
		System.out.println("获取文件是否隐藏:" + file.isHidden());
		System.out.println("获取文件大小(字节):" + file.length());

		SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日 HH:mm:ss");
		String datetime = sdf.format(file.lastModified());
		System.out.println("获取文件最后修改时间:" + datetime);
	}
}

1.1 相对路径 和 绝对路径

绝对路径:从根目录开始的完整路径,包含了文件系统中该文件或目录所在的完整路径,通常以根目录符号(如Linux中的“/”,Windows中的“C:\”)开始

相对路径:相对于当前项目下的路径

public class Test02 {
	public static void main(String[] args) {
		
		File file = new File("file.txt");//使用的是相对路径
		System.out.println(file.length());
		
		//E:\fy2401workspace\Day33\file.txt
		System.out.println("绝对路径:" + file.getAbsolutePath());
		
		//file.txt
		System.out.println("相对路径:" + file.getPath());
		
	}
}

IO流

1.概念

I – in – 输入(读)

O – out – 输出(写)

流 – 一点一点的想水流一样去传输数据

注意:站在程序的角度去看待输入还是输出
在这里插入图片描述

2.分类

按照方向分流:输入流、输出流

按照单位分流:字节流、字符流

按照功能分流:基础流/节点流、处理流

注意:new 处理流(new 基础流) – 装饰者模型 – 处理流对象中往往包含了基础流的对象,在基础流的基础上拓展了额外的功能,使得流更为强大(效率),工作中一般使用处理流
在这里插入图片描述

3.存储单位

1024KB = 1MB

1024MB = 1GB

1024GB = 1TB

1024TB = 1PB

注意:进制1024

4.学习注意事项

  1. 按照流的发展历史去学习
  2. 注意流与流之间的继承关系
  3. 举一反三

简答题

java 中有几种类型的流?JDK 为每种类型的流提供了一些抽象类以供继承,请说出他们分别是哪些类?
字节流,字符流。字节流继承于 InputStream、OutputStream,字符流继承于 Reader、Writer。在 java.io 包中还有许多其他的流,主要是为了提高性能和使用方便。
字节流和字符流的区别是:字节流按 8 位传输以字节为单位输入输出数据,字符流按 16 位传输以字符为单位输入输出数据。

总结

1.File
关注文件信息,而非文件内容
相对路径和绝对路径的区别

2.IO流

  • 15
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

A 北枝

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值