P2-1 文件、日期等常用类

文件、日期等常用类


常用类:File

  • 1、输入输出、IO;文件、文件夹(目录)
    • 输入:读文件
    • 输出:写文件
    • 程序员喜欢称文件夹为目录
  • 2、如何显示文件的扩展名(程序员必备)
    • 文件扩展名
  • 3、import java.io.File(引用类库)
  • 4、File:代表文件或者目录(文件夹).如果根据字符串创建File对象的话,必须用new;
    • 如果在Windows下,复制出来的路径默认是用“\”分割的,需要转义(IDEA会自动转义),也可以改成“/”
      • 因为Windows的路径复制默认是\,而Linux、Mac默认是/
      • 所以改成\去兼容mac把,Windows其实是兼容这种写法的
        1
        File fl =new File("D:/Users/Desktop/test.txt");
  • 5、File只是代表逻辑上的一个文件或者目录(文件夹),不代表一定存在

File类主要成员

方法前面的数据类型就是返回值的类型

1
2
3
4
5
6
7
8
9
10
delete()://删除(如果是非空目录,会删除失败,但不会提示)
boolean exists()://是否存在
String getName()://获得名称(最后一部分)
Strin getParent()、File getParentFile()://得到上一级
getPath()://得到路径部分
boolean isDirectory()://是否是目录
boolean isFile()://是否是文件
String[] list()、File[] listFiles()://获得子项(文件及目录),不包含更下一级
mkdirs()://如果这个目录不存在,则创建;
//如果上N 级目录不存在,也把他们创建起来,不要错误调用成了mkdir()
  • 注意:文件夹的名字有可能会和文本的名字一样,mkdirs也是只创建文件夹

文件夹和文本的名字


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
File fl =new File("E:/temp/test.txt");
// System.out.println(fl);
File fl1 =new File("E:/temp");
//System.out.println(fl1);
//delete()://删除(如果是非空目录,会删除失败,但不会提示)
fl.delete();
//fl1.delete();

//boolean exists()://是否存在
System.out.println(fl.exists());
System.out.println(fl1.exists());
//String getName()://获得名称(最后一部分)
System.out.println(fl.getName());
System.out.println(fl1.getName());
//Strin getParent()、File getParentFile()://得到上一级
System.out.println(fl.getParent());
System.out.println(fl1.getParentFile());
//getPath()://得到路径部分
System.out.println(fl.getPath());
//boolean isDirectory()://是否是目录
System.out.println(fl1.isDirectory());
//boolean isFile()://是否是文件
System.out.println(fl.isFile());
//String[] list()、File[] listFiles()://获得子项(文件及目录),不包含更下一级
String[] files =fl1.list();
for (String file :files)
{
System.out.println(file);
}
//mkdirs()://如果这个目录不存在,则创建;//如果上N 级目录不存在,也把他们创建起来,不要错误调用成了mkdir()
fl.mkdirs();

常用类:日期

  • 1、在JDK1.8之前,日期时间都用Date,但是特别难用
  • 2、import java.time.XXX
    • LocalDate:日期
    • LocalTime:时间
    • LocalDateTime:日期+时间
  • 3、获取当前日期:
    • 获取指定日期:
    • 把字符串解析为日期:
    • 日期对象.getXXX()用于获取年月日的部分

常用类日期


1
2
3
4
5
6
7
8
9
10
11
12
//LocalTime
LocalTime t1 = LocalTime.now();//获取当前时分秒
System.out.println(t1);
LocalTime t2=LocalTime.of(8,9,56);//获取制定的时分秒
System.out.println(t2);
LocalTime t3=LocalTime.parse("23:26:08");//字符串解析成时间
System.out.println(t3);
//获取时分秒
System.out.println(t1.getHour());
System.out.println(t1.getMinute());
System.out.println(t1.getSecond());


1
2
3
4
5
6
7
8
9
10
11
12
13
14
//LocalDate
LocalDate d1=LocalDate.now();//获取当前日期
System.out.println(d1);
LocalDate d2=LocalDate.of(2023,6,19);//获取指定日期
System.out.println(d2);
LocalDate d3=LocalDate.parse("1998-02-08");//把字符串解析为日期
System.out.println(d3);

System.out.println(d3.getYear());//获取年
System.out.println(d3.getMonth());//获取英语的月
System.out.println(d3.getMonthValue());//获取数字的月
System.out.println(d3.getDayOfMonth());//这月的第几天
System.out.println(d3.getDayOfWeek());//这周的第几天
System.out.println(d3.getDayOfYear());//这年的第几天

常用类:日期、时间

常用类日期时间

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
//LocalDateTime
LocalDateTime dt1=LocalDateTime.now();
System.out.println(dt1);
LocalDate d2=LocalDate.of(1998,2,8);//获取指定日期
LocalTime t2=LocalTime.of(12,24,59);//获取制定的时分秒
LocalDateTime dt2=LocalDateTime.of(d2,t2);
System.out.println(dt2);
/**
* LocalDateTime lt = LocalDateTime.parse("2018-12-30T19:34:50.63");
*需要解析后才能正常输出
*
*/
LocalDateTime dt3=LocalDateTime.parse("1997-03-17T11:59:59");
System.out.println(dt3);

System.out.println(dt1.getDayOfMonth());
System.out.println(dt1.getDayOfWeek());
System.out.println(dt1.getDayOfYear());

P2-1 文件、日期等常用类
http://example.com/2024/08/02/SE101-零基础玩Java/Part2-笔记/P2-1 文件、日期等常用类/
Author
John Doe
Posted on
August 2, 2024
Licensed under