【JAVA SE基础篇】47.file类的方法
1.file类的方法
1.getName():获取文件名
2.getPath():获取文件路径,设定是相对路径得到的就是相对路径,绝对路径同里
3.getAbsolutePath():获取文件绝对路径
4.getParent():获取文件父类路径
5.exists():判断文件是否存在
6.isFile():判断文件是否为文件
7.isDirectory():判断文件是否为文件夹
8.length():获取文件的大小
9.createNewFile():创建新的文件
10.delete():删除文件
注:在对文件夹对象使用length()方法时返回0,所以length()方法返回0时,要么是文件不存在,要么是文件夹
例:
1.基本信息
2.文件状态
3.其他
4.文件创建和删除
2.操作文件夹(目录)的方法
1.mkdir():创建目录,确保上级目录存在,否则失败
2.mkdirs():创建目录,上级目录可以不存在,不存在一起创建
例:
3.list():列出下级名称
4.listFiles():列出下级File对象
注:list()方法和listFiles()方法返回内容均由数组储存,且只返回一层
例:
5.listRoots():获取电脑中所有盘符
3.用递归获取目录下的所有子文件
递归:方法自己调用自己
递归由递归头和递归体组成
递归头:何时结束递归
递归体:重复调用
4.用递归统计文件夹的大小
5.字符集和乱码问题
字符集:java字符使用16位的双字节存储,但是在实际文件存储的数据有各种字符集,需要正确操作,否则有乱码出现。
字符是人类使用的文字,例如英语汉语俄语法语,而计算机不识别这些字符,只识别字节
所以字符转成字节的过程叫做编码,字节转成字符叫做解码
而字符集就是一本字典,将世界上常用的字符与其对应的字节进行统计。
常见字符集:
US-ASCII:即英文的ASCII
ISO-8859-1:Latin-1拉丁字符,包含中文、日文等
UTF-8:变长unicode字符(1-3字符)
UTF-16:定长unicode字符(2个字节)
定长字符集:时间复杂度更优,空间复杂度更低
变长字符集:时间复杂度更低,空间复杂度更优
编码:
解码:
乱码原因:
1.字节数不够
2.字符集不统一