课程内容:
-
File类概述
-
File类一等优先级方法
-
今日小结
File类概述
-
相对路径和绝对路径
绝对路径: 从盘符或者根目录出发定位我们要的文件
相对路径: 相对于程序认定的主目录出发定位我们要的文件 -
构造方法
new File(String 路径)
new File(String 父目录,String 文件名)
new File(File 父目录对象,String 文件名) -
路径分界符
Linux,Unix: 仅支持 /
Windows: 最早仅支持 \
后来 / \ 都支持
为解决跨平台兼容性: File.separator
使用构造方法进行套娃时: 系统会自动加上路径分界符,无需用户关心是'/' 或是 '\'
兼容性排行榜: \, /, File.separator,构造方法 -
练习
挖掘机技术哪家强 中国山东找蓝翔
蓝翔里面有小明.txt 请用兼容性最好的方式定位小明.txt
1>
File f1 = new File("中国","山东");
File f2 = new File(f1,"蓝翔");
File f3 = new File(f2,"小明.txt");
2>
File f = new File(new File(new File("中国","山东"),"蓝翔"),"小明.txt");
3>
StringBuffer buff = new StringBuffer("中国");
buff.append(File.separator).append("山东");
buff.append(File.separator).append("蓝翔");
buff.append(File.separator).append("小明.txt");
File f = new File(buff.toString());
File类一等优先级方法 :
4 : 判断 得到信息的 [只读操作的]
3 : 写操作方法
3 : 解析文件路径的
2 : 和时间相关的
[4] : 判断 得到信息的 [只读操作的]
exists() : 判断File对象代表的文件或者目录是否已经存在
*: File对象既可以代表已经存在的文件
又可以代表尚不存在的文件
isFile() : 判断File对象代表的是不是一个文件
isDirectory() : 判断File对象代表的是不是一个目录
*: File对象既可以代表一个文件
又可以代表一个目录
length() : 得到文件的字节个数
length length() size() length()
数组 字符串 集合 文件
int int int long
[3] : 写操作方法
delete() : 删除File对象代表的文件或者目录
*: 该方法不会经过回收站 务必当心没法后悔
*: 如果要删除的是个目录 则必须保证目录是空的
否则删除失败 方法返回false
mkdirs() : 创建多层不存在的目录结构 make directories
*: File类还有个方法叫mkdir() 只能创建一层目录结构
renameTo() : 重命名文件或者目录
*: a.renameTo(c); a必须已经存在 c必须尚不存在
*: a和c可以在不同的目录结构 从而实现移动剪切
[3] : 解析文件路径的
getName() : 得到文件或者目录的名字
getParent() : 得到文件或者目录的父目录
getAbsolutePath() : 得到文件或者目录的绝对路径
[2] : 和时间相关的
setLastModified() : 设置文件最后一次修改时间
lastModified() : 得到文件最后一次修改时间
*: 当我们得到时间戳之后 应该如何解析它
a> java.util.Date
getYear()+1900 getMonth()+1 getDate()
getHours() getMinutes() getSeconds()
b> java.util.Calendar
getInstance()
setTimeInMillis()
get(x) 1 2+1 5 11 12 13 7-1
c> java.text.SimpleDateFormat
from long to String : format()
from String to long : parse() + getTime()
今日小结
1.线程睡眠
Thread.sleep(5000);
TimeUnit.SECONDS.sleep(5);//表意性更强
*: 1>两者都需要抛出异常
2>后者需要import java.util.concurrent.*;
2.cmd命令行常识
. 表示当前目录
.. 表示回退到上一层目录
3.集合相关
1>TreeSet,TreeMap集合在制定比较规则进行排序时需要先作equals判断(针对值相同的数据是否舍弃的判断)
Set<Integer>set = new TreeSet<>((a,b)->a.equals(b)?1:b.compareTo(a));
Map<Integer,String>map = new TreeMap<>((a,b)->a.equals(b)?1:b.compareTo(a));
2>List集合在制定比较规则进行排序时不需要作equals判断
List<Integer>list = new ArrayList<>((a,b)->Integer.compare(b,a));
4.时间相关
long one = 24L*60*60*1000;//表示一天的毫秒数
getTime()://获取毫秒数
System.currentTimeMillis();//获取当前时间毫秒数
setTimeInMillis();//调整毫秒数
SimpleDateFormat 在解析parse时需要抛异常
标签:文件,String,day07,File,m2,new,目录,append From: https://www.cnblogs.com/zhaodenghui33/p/18190246