Java获取文件信息

readAttributes方法获取文件属性

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15

Path path = Paths.get("C:/Users/LetGo/Desktop/", "16.png");
SimpleDateFormat format=new SimpleDateFormat("yy-MM-dd HH:mm:ss");

BasicFileAttributes a= Files.readAttributes(path, BasicFileAttributes.class);
System.out.println(a.size());
System.out.println( "创建日期"+format.format(new Date(a.creationTime().toMillis())) );
System.out.println("最后访问时间:"+format.format(new Date(a.lastAccessTime().toMillis())));
System.out.println("最后修改时间:"+format.format(new Date(a.lastModifiedTime().toMillis())));

System.out.println("是否为目录"+a.isDirectory());
System.out.println("是否为其他"+a.isOther());
System.out.println("是否为常规文件"+a.isRegularFile());
System.out.println("是否为连接"+a.isSymbolicLink());

阅读全文

Java 逐行读取文件

1
2
3
4
 BufferedReader br = new BufferedReader(
new InputStreamReader(new FileInputStream(new File("C:/Users/LetGo/Desktop/messages")
),StandardCharsets.UTF_8));
String s=br.readLine() != null);

阅读全文

linux下文件转码

最近两天因为项目中的原始文件编码格式为cp936,而程序处理的是utf-8,所以需要对其转换,想来也不是很麻烦,但是还是遇到了很多坑,所以记下,可能会帮到别人。
linux下有多种转换文件编码格式的方法,但最常用的转换工具是vimiconv

阅读全文

JVM学习笔记(一) ——Java虚拟机内存结构

JAVA虚拟机内存结构

  • JAVA虚拟机内存结构可分为公有和私有两部分
    • 公有: 堆、方法区、运行时常量池
    • 私有: 程序计数器、JAVA虚拟机栈、本地方法栈

阅读全文

Java时间日期处理

在java.util包中提供了Date和Calendar两个类用来封装日期和时间有关的信息

1.Date类

在java中日期用代表毫微秒的一个厂整数镜像存储表示,也就是日期时间相对格林威治时间(GMT)1970年1月1日零点整数过去的毫微秒数。

阅读全文

Spring Data Jpa模糊查询

晚上在用Spring Data Jpa做一个复杂查询的时候,用到了模糊查询,遇到了一个坑,花了很多时间,严重打击了我的积极性… ,可能也是很多人即使看了官方文档也容易忽略的地方。

  • Spring Data JPa模糊查询
    1
    List<MoveInfo> moveInfoList2=moveInfoService.findByLocationLike("%"+location+"%");

阅读全文

BigDecimal

Java在java.math包中提供的API类BigDecimal,用来对超过16位有效位的数进行精确的运算。双精度浮点型变量double可以处理16位有效数,但在实际应用中,可能需要对更大或者更小的数进行运算和处理。一般情况下,对于那些不需要准确计算精度的数字,我们可以直接使用Float和Double处理,但是Double.valueOf(String) 和Float.valueOf(String)会丢失精度。所以开发中,如果我们需要精确计算的结果,则必须使用BigDecimal类来操作。

阅读全文

LeetCode LCP 06 拿硬币

Subject

  • 桌上有 n 堆力扣币,每堆的数量保存在数组 coins 中。我们每次可以选择任意一堆,拿走其中的一枚或者两枚,求拿完所有力扣币的最少次数。

阅读全文