JAVA学习

抛出是告诉调用者出错了

捕获是让出错时不要停止继续运行

自定义异常:

1.定义异常类

2.写继承关系

3.空参构造

4.带参构造

意义:就是为了让控制台的报错信息更加见名知意

File:

length:

细节:这个方法只能获取文件的大小,单位是字节

如果单位我们要是M,G,可以不断的除1024

细节2:这个方法无法获取文件夹的大小,如果我们要获取一个文件夹的大小,需要把这个文件夹里面所有的文件大小都累加在一起

delete:

delete方法默认只能删除文件和空文件夹,delete方法直接删除不走回收站(删除就没了)

如果删除空文件夹则删除成功,文件夹有内容删除失败

细节1:creatNewFile如果当前路径表示的文件是不存在的,则创建成功,方法返回true

如果当前路径表示的文件是存在的,则创建失败,方法返回false

细节2:如果父级路径是不存在的,那么方法会有异常IOException

细节3:creatNewFile方法创建的一定是文件,如果路径中不包含后缀名,则创建一个没有后缀的文件

mkdir:

细节1:Windows当中路径是唯一的,如果当前路径已经存在,则创建失败

细节2:mkdir方法只能创建单级文件夹,无法创建多级文件夹

mkdirs:

细节:既可以创建多级的,也可以创建单级的

用于遍历或者拷贝都很好用

IO流:

纯文本文件·:Windows自带的记事本打开能读懂

字节流:

FileoutputStream:

书写步骤:

1.创建字节输出流对象

细节1:参数是字符串表示的路径或者是File对象都是可以的

细节2:如果文件不存在会创建一个新的文件,但是要保证父级路径是存在的

细节3:如果文件已经存在会清空文件

2.写数据

细节:write方法的参数是整数,但是实际上写到本地文件中的是整数在ASCLL上对应的字符

3.释放资源

每次使用完流之后都要释放资源

FileoutputStrram写数据的3种方式:

对于第三种方法:

参数1:数组,参数2:起始索引,参数3:个数

FileoutputStream写数据的两个小问题:

换行写:

再次写一个换行符就可以了

续写:

如果想要续写,打开续写开关即可

开关位置:创建对象的第二个参数,默认是false:表示关闭续写,此时创建对象会清空文件,手动传递true:表示打开续写,此时创建对象不会清空文件

举个栗子:FileOutputStream fos=new FileOutputStream(str,true);

FiileinputStream:

操作本地文件的字节输入流,可以把本地文件中的数据读取到程序中来

书写步骤:

1.创建字节输入流对象

细节1:如果文件不存在,直接报错

2.读数据

细节1:一次读一个字节,读出来的是数据在ASCII上对应的数字

细节2:读到文件末尾了,read方法返回-1

3.释放资源

每一次使用完之后要释放资源

FiileinputStream一次读取多个数据:

将释放资源等扫尾操作放在finally中

字符集:

GBK:

规则1:汉字两个字节储存

规则2:高位字节二进制一定以1开头,转成十进制之后是一个负数

Unicode:

UTF-8编码规则:用1到4个字节保存:ASCII,1个字节,简体中文,3个字节

UTF-16编码规则:用2到4个字节保存

UTF-32编码规则:固定使用四个字节保存

 

字符流:

特点:一次读一个字节,遇到中文时,一次读多个字节

FileReader(空参):

FileReader(有参):

与字节流不同,传入的是char类型的数组

FileWriter:

字节流和字符流的使用场景:

字节流:拷贝任意类型的文件

字符流:读取纯文本文件中的数据,往纯文本文件中写出数据

缓冲流:

字符缓冲流:

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值