Skip to content

Commit d54904e

Browse files
committed
see 08/25 log
1 parent e5de744 commit d54904e

File tree

5 files changed

+99
-74
lines changed

5 files changed

+99
-74
lines changed

utilcode/src/main/java/com/blankj/utilcode/utils/ConstUtils.java

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,12 @@ private ConstUtils() {
1515
}
1616

1717
/******************** 存储相关常量 ********************/
18+
public enum MemoryUnit {
19+
BYTE,
20+
KB,
21+
MB,
22+
GB,
23+
}
1824
/**
1925
* Byte与Byte的倍数
2026
*/
@@ -33,6 +39,13 @@ private ConstUtils() {
3339
public static final int GB = 1073741824;
3440

3541
/******************** 时间相关常量 ********************/
42+
public enum TimeUnit {
43+
MSEC,
44+
SEC,
45+
MIN,
46+
HOUR,
47+
DAY
48+
}
3649
/**
3750
* 毫秒与毫秒的倍数
3851
*/

utilcode/src/main/java/com/blankj/utilcode/utils/FileUtils.java

Lines changed: 24 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@
1919
import java.util.Collections;
2020
import java.util.List;
2121

22+
import static com.blankj.utilcode.utils.ConstUtils.*;
2223
import static com.blankj.utilcode.utils.ConstUtils.KB;
2324

2425
/**
@@ -901,20 +902,23 @@ public static byte[] readFile2Bytes(File file) {
901902
*
902903
* @param size 大小
903904
* @param unit <ul>
904-
* <li>{@link ConstUtils#BYTE}: 字节</li>
905-
* <li>{@link ConstUtils#KB} : 千字节</li>
906-
* <li>{@link ConstUtils#MB} : 兆</li>
907-
* <li>{@link ConstUtils#GB} : GB</li>
905+
* <li>{@link MemoryUnit#BYTE}: 字节</li>
906+
* <li>{@link MemoryUnit#KB} : 千字节</li>
907+
* <li>{@link MemoryUnit#MB} : 兆</li>
908+
* <li>{@link MemoryUnit#GB} : GB</li>
908909
* </ul>
909910
* @return 大小以unit为单位
910911
*/
911-
public static double byte2Unit(long size, int unit) {
912+
public static double byte2Unit(long size, MemoryUnit unit) {
912913
switch (unit) {
913-
case ConstUtils.BYTE:
914-
case ConstUtils.KB:
915-
case ConstUtils.MB:
916-
case ConstUtils.GB:
917-
return (double) size / unit;
914+
case BYTE:
915+
return (double) size / BYTE;
916+
case KB:
917+
return (double) size / KB;
918+
case MB:
919+
return (double) size / MB;
920+
case GB:
921+
return (double) size / GB;
918922
}
919923
return -1;
920924
}
@@ -925,14 +929,14 @@ public static double byte2Unit(long size, int unit) {
925929
*
926930
* @param filePath 文件路径
927931
* @param unit <ul>
928-
* <li>{@link ConstUtils#BYTE}: 字节</li>
929-
* <li>{@link ConstUtils#KB} : 千字节</li>
930-
* <li>{@link ConstUtils#MB} : 兆</li>
931-
* <li>{@link ConstUtils#GB} : GB</li>
932+
* <li>{@link MemoryUnit#BYTE}: 字节</li>
933+
* <li>{@link MemoryUnit#KB} : 千字节</li>
934+
* <li>{@link MemoryUnit#MB} : 兆</li>
935+
* <li>{@link MemoryUnit#GB} : GB</li>
932936
* </ul>
933937
* @return 文件大小以unit为单位
934938
*/
935-
public static double getFileSize(String filePath, int unit) {
939+
public static double getFileSize(String filePath, MemoryUnit unit) {
936940
return getFileSize(getFileByPath(filePath), unit);
937941
}
938942

@@ -942,14 +946,14 @@ public static double getFileSize(String filePath, int unit) {
942946
*
943947
* @param file 文件
944948
* @param unit <ul>
945-
* <li>{@link ConstUtils#BYTE}: 字节</li>
946-
* <li>{@link ConstUtils#KB} : 千字节</li>
947-
* <li>{@link ConstUtils#MB} : 兆</li>
948-
* <li>{@link ConstUtils#GB} : GB</li>
949+
* <li>{@link MemoryUnit#BYTE}: 字节</li>
950+
* <li>{@link MemoryUnit#KB} : 千字节</li>
951+
* <li>{@link MemoryUnit#MB} : 兆</li>
952+
* <li>{@link MemoryUnit#GB} : GB</li>
949953
* </ul>
950954
* @return 文件大小以unit为单位
951955
*/
952-
public static double getFileSize(File file, int unit) {
956+
public static double getFileSize(File file, MemoryUnit unit) {
953957
if (!isFileExists(file)) return -1;
954958
return byte2Unit(file.length(), unit);
955959
}

utilcode/src/main/java/com/blankj/utilcode/utils/TimeUtils.java

Lines changed: 56 additions & 49 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,8 @@
55
import java.util.Date;
66
import java.util.Locale;
77

8+
import static com.blankj.utilcode.utils.ConstUtils.*;
9+
810

911
/**
1012
* <pre>
@@ -28,7 +30,8 @@ private TimeUtils() {
2830
* 表示单引号。所有其他字符均不解释;只是在格式化时将它们简单复制到输出字符串,或者在分析时与输入字符串进行匹配。
2931
* </p>
3032
* 定义了以下模式字母(所有其他字符 'A' 到 'Z' 和 'a' 到 'z' 都被保留): <br>
31-
* <table border="1" cellspacing="1" cellpadding="1" summary="Chart shows pattern letters, date/time component, presentation, and examples.">
33+
* <table border="1" cellspacing="1" cellpadding="1" summary="Chart shows pattern letters, date/time component,
34+
* presentation, and examples.">
3235
* <tr>
3336
* <th align="left">字母</th>
3437
* <th align="left">日期或时间元素</th>
@@ -300,22 +303,26 @@ public static Date milliseconds2Date(long milliseconds) {
300303
*
301304
* @param milliseconds 毫秒时间戳
302305
* @param unit <ul>
303-
* <li>{@link ConstUtils#MSEC}: 毫秒</li>
304-
* <li>{@link ConstUtils#SEC }: 秒</li>
305-
* <li>{@link ConstUtils#MIN }: 分</li>
306-
* <li>{@link ConstUtils#HOUR}: 小时</li>
307-
* <li>{@link ConstUtils#DAY }: 天</li>
306+
* <li>{@link TimeUnit#MSEC}: 毫秒</li>
307+
* <li>{@link TimeUnit#SEC }: 秒</li>
308+
* <li>{@link TimeUnit#MIN }: 分</li>
309+
* <li>{@link TimeUnit#HOUR}: 小时</li>
310+
* <li>{@link TimeUnit#DAY }: 天</li>
308311
* </ul>
309312
* @return unit时间戳
310313
*/
311-
private static long milliseconds2Unit(long milliseconds, int unit) {
314+
private static long milliseconds2Unit(long milliseconds, TimeUnit unit) {
312315
switch (unit) {
313-
case ConstUtils.MSEC:
314-
case ConstUtils.SEC:
315-
case ConstUtils.MIN:
316-
case ConstUtils.HOUR:
317-
case ConstUtils.DAY:
318-
return milliseconds / unit;
316+
case MSEC:
317+
return milliseconds / MSEC;
318+
case SEC:
319+
return milliseconds / SEC;
320+
case MIN:
321+
return milliseconds / MIN;
322+
case HOUR:
323+
return milliseconds / HOUR;
324+
case DAY:
325+
return milliseconds / DAY;
319326
}
320327
return -1;
321328
}
@@ -327,15 +334,15 @@ private static long milliseconds2Unit(long milliseconds, int unit) {
327334
* @param time0 时间字符串1
328335
* @param time1 时间字符串2
329336
* @param unit <ul>
330-
* <li>{@link ConstUtils#MSEC}: 毫秒</li>
331-
* <li>{@link ConstUtils#SEC }: 秒</li>
332-
* <li>{@link ConstUtils#MIN }: 分</li>
333-
* <li>{@link ConstUtils#HOUR}: 小时</li>
334-
* <li>{@link ConstUtils#DAY }: 天</li>
337+
* <li>{@link TimeUnit#MSEC}: 毫秒</li>
338+
* <li>{@link TimeUnit#SEC }: 秒</li>
339+
* <li>{@link TimeUnit#MIN }: 分</li>
340+
* <li>{@link TimeUnit#HOUR}: 小时</li>
341+
* <li>{@link TimeUnit#DAY }: 天</li>
335342
* </ul>
336343
* @return unit时间戳
337344
*/
338-
public static long getIntervalTime(String time0, String time1, int unit) {
345+
public static long getIntervalTime(String time0, String time1, TimeUnit unit) {
339346
return getIntervalTime(time0, time1, unit, DEFAULT_SDF);
340347
}
341348

@@ -346,16 +353,16 @@ public static long getIntervalTime(String time0, String time1, int unit) {
346353
* @param time0 时间字符串1
347354
* @param time1 时间字符串2
348355
* @param unit <ul>
349-
* <li>{@link ConstUtils#MSEC}: 毫秒</li>
350-
* <li>{@link ConstUtils#SEC }: 秒</li>
351-
* <li>{@link ConstUtils#MIN }: 分</li>
352-
* <li>{@link ConstUtils#HOUR}: 小时</li>
353-
* <li>{@link ConstUtils#DAY }: 天</li>
356+
* <li>{@link TimeUnit#MSEC}: 毫秒</li>
357+
* <li>{@link TimeUnit#SEC }: 秒</li>
358+
* <li>{@link TimeUnit#MIN }: 分</li>
359+
* <li>{@link TimeUnit#HOUR}: 小时</li>
360+
* <li>{@link TimeUnit#DAY }: 天</li>
354361
* </ul>
355362
* @param format 时间格式
356363
* @return unit时间戳
357364
*/
358-
public static long getIntervalTime(String time0, String time1, int unit, SimpleDateFormat format) {
365+
public static long getIntervalTime(String time0, String time1, TimeUnit unit, SimpleDateFormat format) {
359366
return Math.abs(milliseconds2Unit(string2Milliseconds(time0, format)
360367
- string2Milliseconds(time1, format), unit));
361368
}
@@ -367,15 +374,15 @@ public static long getIntervalTime(String time0, String time1, int unit, SimpleD
367374
* @param time0 Date类型时间1
368375
* @param time1 Date类型时间2
369376
* @param unit <ul>
370-
* <li>{@link ConstUtils#MSEC}: 毫秒</li>
371-
* <li>{@link ConstUtils#SEC }: 秒</li>
372-
* <li>{@link ConstUtils#MIN }: 分</li>
373-
* <li>{@link ConstUtils#HOUR}: 小时</li>
374-
* <li>{@link ConstUtils#DAY }: 天</li>
377+
* <li>{@link TimeUnit#MSEC}: 毫秒</li>
378+
* <li>{@link TimeUnit#SEC }: 秒</li>
379+
* <li>{@link TimeUnit#MIN }: 分</li>
380+
* <li>{@link TimeUnit#HOUR}: 小时</li>
381+
* <li>{@link TimeUnit#DAY }: 天</li>
375382
* </ul>
376383
* @return unit时间戳
377384
*/
378-
public static long getIntervalTime(Date time0, Date time1, int unit) {
385+
public static long getIntervalTime(Date time0, Date time1, TimeUnit unit) {
379386
return Math.abs(milliseconds2Unit(date2Milliseconds(time1)
380387
- date2Milliseconds(time0), unit));
381388
}
@@ -426,15 +433,15 @@ public static Date getCurTimeDate() {
426433
*
427434
* @param time 时间字符串
428435
* @param unit <ul>
429-
* <li>{@link ConstUtils#MSEC}:毫秒</li>
430-
* <li>{@link ConstUtils#SEC }:秒</li>
431-
* <li>{@link ConstUtils#MIN }:分</li>
432-
* <li>{@link ConstUtils#HOUR}:小时</li>
433-
* <li>{@link ConstUtils#DAY }:天</li>
436+
* <li>{@link TimeUnit#MSEC}:毫秒</li>
437+
* <li>{@link TimeUnit#SEC }:秒</li>
438+
* <li>{@link TimeUnit#MIN }:分</li>
439+
* <li>{@link TimeUnit#HOUR}:小时</li>
440+
* <li>{@link TimeUnit#DAY }:天</li>
434441
* </ul>
435442
* @return unit时间戳
436443
*/
437-
public static long getIntervalByNow(String time, int unit) {
444+
public static long getIntervalByNow(String time, TimeUnit unit) {
438445
return getIntervalByNow(time, unit, DEFAULT_SDF);
439446
}
440447

@@ -444,16 +451,16 @@ public static long getIntervalByNow(String time, int unit) {
444451
*
445452
* @param time 时间字符串
446453
* @param unit <ul>
447-
* <li>{@link ConstUtils#MSEC}: 毫秒</li>
448-
* <li>{@link ConstUtils#SEC }: 秒</li>
449-
* <li>{@link ConstUtils#MIN }: 分</li>
450-
* <li>{@link ConstUtils#HOUR}: 小时</li>
451-
* <li>{@link ConstUtils#DAY }: 天</li>
454+
* <li>{@link TimeUnit#MSEC}: 毫秒</li>
455+
* <li>{@link TimeUnit#SEC }: 秒</li>
456+
* <li>{@link TimeUnit#MIN }: 分</li>
457+
* <li>{@link TimeUnit#HOUR}: 小时</li>
458+
* <li>{@link TimeUnit#DAY }: 天</li>
452459
* </ul>
453460
* @param format 时间格式
454461
* @return unit时间戳
455462
*/
456-
public static long getIntervalByNow(String time, int unit, SimpleDateFormat format) {
463+
public static long getIntervalByNow(String time, TimeUnit unit, SimpleDateFormat format) {
457464
return getIntervalTime(getCurTimeString(), time, unit, format);
458465
}
459466

@@ -463,15 +470,15 @@ public static long getIntervalByNow(String time, int unit, SimpleDateFormat form
463470
*
464471
* @param time Date类型时间
465472
* @param unit <ul>
466-
* <li>{@link ConstUtils#MSEC}: 毫秒</li>
467-
* <li>{@link ConstUtils#SEC }: 秒</li>
468-
* <li>{@link ConstUtils#MIN }: 分</li>
469-
* <li>{@link ConstUtils#HOUR}: 小时</li>
470-
* <li>{@link ConstUtils#DAY }: 天</li>
473+
* <li>{@link TimeUnit#MSEC}: 毫秒</li>
474+
* <li>{@link TimeUnit#SEC }: 秒</li>
475+
* <li>{@link TimeUnit#MIN }: 分</li>
476+
* <li>{@link TimeUnit#HOUR}: 小时</li>
477+
* <li>{@link TimeUnit#DAY }: 天</li>
471478
* </ul>
472479
* @return unit时间戳
473480
*/
474-
public static long getIntervalByNow(Date time, int unit) {
481+
public static long getIntervalByNow(Date time, TimeUnit unit) {
475482
return getIntervalTime(getCurTimeDate(), time, unit);
476483
}
477484

utilcode/src/test/java/com/blankj/utilcode/utils/FileUtilsTest.java

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,7 @@ public class FileUtilsTest {
2626

2727
@Test
2828
public void testGetFileByPath() throws Exception {
29+
System.out.println(new byte[0].length);
2930
assertThat(getFileByPath(" ")).isNull();
3031
assertThat(getFileByPath("c:")).isNotNull();
3132
}
@@ -186,12 +187,12 @@ public void testReadFile2Bytes() throws Exception {
186187

187188
@Test
188189
public void testByte2Unit() throws Exception {
189-
assertThat(byte2Unit(ConstUtils.GB, ConstUtils.MB) - 1024).isWithin(0.001);
190+
assertThat(byte2Unit(ConstUtils.GB, ConstUtils.MemoryUnit.MB) - 1024).isWithin(0.001);
190191
}
191192

192193
@Test
193194
public void testGetFileSize() throws Exception {
194-
assertThat(getFileSize(path + "UTF8.txt", ConstUtils.BYTE) - 25).isWithin(0.001);
195+
assertThat(getFileSize(path + "UTF8.txt", ConstUtils.MemoryUnit.BYTE) - 25).isWithin(0.001);
195196
}
196197

197198
@Test

utilcode/src/test/java/com/blankj/utilcode/utils/TimeUtilsTest.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -68,9 +68,9 @@ public void testMilliseconds2Date() throws Exception {
6868

6969
@Test
7070
public void testGetIntervalTime() throws Exception {
71-
assertThat(getIntervalTime(timeString0, timeString1, ConstUtils.SEC)).isEqualTo(4210);
72-
assertThat(getIntervalTime(myTimeString0, myTimeString1, ConstUtils.SEC, myFormat)).isEqualTo(4210);
73-
assertThat(getIntervalTime(new Date(4210000), new Date(0), ConstUtils.SEC)).isEqualTo(4210);
71+
assertThat(getIntervalTime(timeString0, timeString1, ConstUtils.TimeUnit.SEC)).isEqualTo(4210);
72+
assertThat(getIntervalTime(myTimeString0, myTimeString1, ConstUtils.TimeUnit.SEC, myFormat)).isEqualTo(4210);
73+
assertThat(getIntervalTime(new Date(4210000), new Date(0), ConstUtils.TimeUnit.SEC)).isEqualTo(4210);
7474
}
7575

7676
@Test

0 commit comments

Comments
 (0)