6
6
<dependency >
7
7
<groupId >com.zhazhapan</groupId >
8
8
<artifactId >util</artifactId >
9
- <version >1.0.1 </version >
9
+ <version >1.0.2 </version >
10
10
</dependency >
11
11
```
12
12
13
- ** 或手动导入:** [ 点我下载] ( http://oq3iwfipo.bkt.clouddn.com/tools/zhazhapan/util-1.0.1 .jar )
13
+ ** 或手动导入:** [ 点我下载] ( http://oq3iwfipo.bkt.clouddn.com/tools/zhazhapan/util-1.0.2 .jar )
14
14
15
15
## 功能
16
16
@@ -35,10 +35,23 @@ JsonParser jsonParser = new JsonParser("/Users/pantao/Desktop/test.json");
35
35
String str = jsonParser. getString(" key3[1].fast" );
36
36
String str1 = jsonParser. getString(" key4[1]" );
37
37
JSONObject jsonObject = jsonParser. getObject(" key3[0]" );
38
- JSONArray jsonArray = jsonParser. getArray(" key4" );
38
+ JSONArray jsonArray = jsonParser. getArray(" key4" );
39
+ // 或使用JSONPath路径语法
40
+ Object object = jsonParser. eval(" $.key2.child1" );
41
+
42
+ // 4. 修改指定路径值
43
+ jsonParser. set(" key1" , " test_set_value" );
44
+
45
+ // 5. 删除指定路径值
46
+ jsonParser. remove(" key1" );
47
+
48
+ // 6. 指定路径是否包含某个值
49
+ boolean b = jsonParser. containsValue(" key1" , " test" );
39
50
```
40
51
41
- ** 2. 简单计算器(v1.0.1中加入)**
52
+ 备注:[ fastjson jsonpath路径语法] ( https://github.com/alibaba/fastjson/wiki/JSONPath )
53
+
54
+ ** 2. 简单计算器**
42
55
43
56
* 使用*
44
57
@@ -76,15 +89,35 @@ Downloader.download(storagePath, "http://oq3iwfipo.bkt.clouddn.com/tools/zhazhap
76
89
// 1. 导包
77
90
import com.zhazhapan.util.FileExecutor ;
78
91
79
- // 2. 创建对象
80
- FileExecutor executor = new FileExecutor ();
81
-
82
- // 3. 写文件(可能抛出IO异常)
92
+ // 2. 写文件(可能抛出IO异常)
83
93
String write = " write something" ;
84
- executor. saveFile(" /Users/pantao/Desktop/test.txt" , write, false );
94
+ FileExecutor . saveFile(" /Users/pantao/Desktop/test.txt" , write, false );
95
+
96
+ // 3. 读文件(可能抛出IO异常)
97
+ String read = FileExecutor . readFile(" /Users/pantao/Desktop/test.txt" );
98
+
99
+ // 4. 批量复制文件夹
100
+ FileExecutor . copyDirectories(new String [] { " /Users/pantao/Desktop/test" }, " /Users/pantao/Desktop/new" );
101
+
102
+ // 5. 批量复制文件
103
+ FileExecutor . copyFiles(new String [] { " /Users/pantao/Desktop/qiniu.jar" }, " /Users/pantao/Desktop/test" );
104
+
105
+ // 6. 批量重命名文件
106
+ String [] files = new String [] { " /Users/pantao/Desktop/test/Dump20171220_3.sql" , " /Users/pantao/Desktop/test/Dump20171220_4.sql" };
107
+ FileExecutor . renameFiles(files, new String [] { " test_rename_1" , " test_rename_2.txt" });
85
108
86
- // 4. 读文件(可能抛出IO异常)
87
- String read = executor. readFile(" /Users/pantao/Desktop/test.txt" );
109
+ // 7. 拆分文件,通过拆分点拆分
110
+ FileExecutor . splitFile(" /Users/pantao/Desktop/test/Dump20171220.sql" , new long [] { 1000 , 2000 , 3000 });
111
+
112
+ // 8. 合并文件
113
+ String [] files = new String [] { " /Users/pantao/Desktop/test/Dump20171220_1.sql" , " /Users/pantao/Desktop/test/Dump20171220_2.sql" };
114
+ FileExecutor . mergeFiles(files, " /Users/pantao/Desktop/test/test_merge.sql" , " " );
115
+
116
+ // 9. 创建文件(如果存在则删除)
117
+ FileExecutor . createNewFile(" test.txt" );
118
+
119
+ // 10. 删除文件或文件夹(递归删除)
120
+ FileExecutor . deleteFile(" /Users/pantao/Desktop/test/test_merge.sql" );
88
121
```
89
122
90
123
** 5. 简单的线程池**
@@ -238,4 +271,48 @@ String msg = Dialogs.showInputDialog("title", "header", "content", "default valu
238
271
| getMonth | 获取月份 |
239
272
| getYear | 获取年份 |
240
273
| getMaxValue | 从多个数字中获取最大值 |
241
- | mergeSortedArrays | 将两个已经排好序(同序)的数组合并一个有序数组 |
274
+ | mergeSortedArrays | 将两个已经排好序(同序)的数组合并一个有序数组 |
275
+
276
+ ** 11. ` com.zhazhapan.util.ArraySort ` 类**
277
+
278
+ | 方法名| 简要说明|
279
+ | ------| ---------------|
280
+ | heapSort| 堆排序|
281
+ | mergeSort| 归并排序|
282
+ | shellSort| 希尔排序|
283
+ | selectSort| 选择排序|
284
+ | quickSort| 快速排序|
285
+ | insertSort| 插入排序|
286
+ | bubbleSort| 冒泡排序|
287
+
288
+ ** 12. ` com.zhazhapan.util.DateUtils ` 类**
289
+
290
+ | 方法名| 简要说明|
291
+ | ------| ---------------|
292
+ | getWeekAsChinese| 获取某个日期的星期,返回一个中文字符串|
293
+ | getWeek| 获取某个日期的星期,返回一个整型|
294
+ | addHour| 某个日期后推多少个小时|
295
+ | addMinute| 某个日期后推多少个分钟|
296
+ | addSecond| 某个日期后推多少个秒|
297
+ | addYear| 某个日期后推多少个年|
298
+ | addMonth| 某个日期后推多少个月|
299
+ | addDay| 某个日期后推多少个天|
300
+
301
+ ** 13. 发送邮件**
302
+
303
+ ``` java
304
+ // 导包
305
+ import com.zhazhapan.util.MailSender ;
306
+
307
+ // 如何使用,下面的key指的是开启了POP3/IMAP/SMTP/Exchange/CardDAV/CalDAV服务,生成的授权码
308
+ MailSender . config(" smtp.qq.com" , " zhazhapan" , " 735817834@qq.com" , " key" );
309
+ MailSender . sendMail(" tao@zhazhapan.com" , " title" , " this is a test email" );
310
+ ```
311
+
312
+ ** 14. ` com.zhazhapan.util.RandomUtils ` 类**
313
+
314
+ | 方法名| 简要说明|
315
+ | ------| ---------------|
316
+ | getRandomDouble| 获取一个随机的双精度类型|
317
+ | getRandomInteger| 获取一个随机的整型|
318
+ | getRandomColor| 获取一个随机的颜色|
0 commit comments