Skip to content

Commit 5ddd6d6

Browse files
StringUtils调用例子
1 parent 74b1b09 commit 5ddd6d6

File tree

2 files changed

+111
-1
lines changed

2 files changed

+111
-1
lines changed

src/main/java/com/FileUtilsDemo.java

Lines changed: 76 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,26 +3,101 @@
33
import org.apache.commons.io.FileUtils;
44

55
import java.io.File;
6+
import java.io.FileOutputStream;
67
import java.io.IOException;
8+
import java.net.URL;
9+
import java.util.ArrayList;
710
import java.util.List;
811

912
/**
10-
* Created by lenovo on 二月
13+
* FileUtils工具类的例子
14+
* fileName 文件名
15+
* encoding 编码格式。比如"UTF-8"
1116
*/
1217
public class FileUtilsDemo {
1318
public static void readFile(String fileName,String encoding ) throws IOException {
1419
String str=FileUtils.readFileToString(new File(fileName),encoding);
1520
System.out.println(str);
1621
}
1722

23+
1824
public static void readFileByLine(String fileName,String encoding) throws IOException {
1925
List<String> list=FileUtils.readLines(new File(fileName), encoding);
2026
for(String str:list) {
2127
System.out.println(str);
2228
}
2329
}
2430

31+
/**
32+
*
33+
* FileUtils.write() ,最后一个布尔参数,表示是在文件末追加,还是直接覆盖
34+
*/
2535
public static void writeFile(String fileName, CharSequence data, String encoding) throws IOException {
2636
FileUtils.write(new File(fileName),data,encoding,true);
2737
}
38+
39+
public static void writeFileByLines(String fileName,List<String> linesList) throws IOException {
40+
FileUtils.writeLines(new File(fileName),linesList,true);
41+
}
42+
43+
/**
44+
* 参考博客:http://blog.csdn.net/lqclh502/article/details/38338327
45+
*/
46+
public static void main(String[] args) throws IOException {
47+
//删除目录
48+
//static void:deleteDirectory(File directory)
49+
FileUtils.deleteDirectory(new File("D:/not/cxyapi"));
50+
51+
//static boolean:deleteQuietly(File file)
52+
FileUtils.deleteQuietly(new File("D:/not/cxyapi")); //文件夹不是空任然可以被删除,永远不会抛出异常
53+
54+
//移动文件 或 文件夹
55+
//static void:moveDirectory(File srcDir, File destDir)
56+
FileUtils.moveDirectory(new File("D:/cxyapi1"), new File("D:/cxyapi2")); //注意这里 第二个参数文件不存在会引发异常
57+
//static void:moveDirectoryToDirectory(File src, File destDir, boolean createDestDir)
58+
FileUtils.moveDirectoryToDirectory(new File("D:/cxyapi2"), new File("D:/cxyapi3"), true);
59+
/* 上面两个方法的不同是:
60+
* moveDirectory:D:/cxyapi2里的内容是D:/cxyapi1的内容。
61+
* moveDirectoryToDirectory:D:/cxyapi2文件夹移动到到D:/cxyapi3里
62+
*
63+
* 下面的3个都比较简单没提供示例,只提供了api
64+
* 其中moveToDirectory和其他的区别是 它能自动识别操作文件还是文件夹
65+
*/
66+
//static void:moveFileToDirectory(srcFile, destDir, createDestDir)
67+
//static void:moveFile(File srcFile, File destFile)
68+
//static void:moveToDirectory(File src, File destDir, boolean createDestDir)
69+
70+
//结果是cxyapi和cxyapi1在同一目录
71+
FileUtils.copyDirectory(new File("D:/cxyapi"), new File("D:/cxyapi1"));
72+
//结果是将cxyapi拷贝到cxyapi2下
73+
FileUtils.copyDirectoryToDirectory(new File("D:/cxyapi"), new File("D:/cxyapi2"));
74+
75+
//拷贝文件
76+
FileUtils.copyFile(new File("d:/cxyapi.xml"), new File("d:/cxyapi.xml.bak"));
77+
//拷贝文件到目录中
78+
FileUtils.copyFileToDirectory(new File("d:/cxyapi.xml"), new File("d:/cxyapi"));
79+
//拷贝url到文件
80+
FileUtils.copyURLToFile(new URL("http://www.cxyapi.com/rss/cxyapi.xml"), new File("d:/cxyapi.xml"));
81+
82+
//判断是否包含文件或者文件夹
83+
boolean b=FileUtils.directoryContains(new File("D:/cxyapi"), new File("D:/cxyapi/cxyapi.txt"));
84+
System.out.println(b);
85+
86+
//获得临时目录 和 用户目录
87+
System.out.println(FileUtils.getTempDirectoryPath());
88+
System.out.println(FileUtils.getUserDirectoryPath());
89+
90+
//打开流,如果不存在创建文件及其目录结构
91+
//第二个参数表示 文件流是否是追加方式
92+
FileOutputStream fos=FileUtils.openOutputStream(new File("D:/cxyapi/cxyapi.txt"),true);
93+
fos.write(new String("欢迎访问:www.cxyapi.com\r\n").getBytes());
94+
fos.close();
95+
96+
//文件 或 文件夹大小
97+
System.out.println(FileUtils.sizeOf(new File("D:/cxyapi")));
98+
System.out.println(FileUtils.sizeOfDirectory(new File("D:/cxyapi")));
99+
100+
}
101+
102+
28103
}
Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
package com;
2+
3+
import org.apache.commons.lang3.StringUtils;
4+
5+
/**
6+
* Created by lenovo on 二月
7+
*/
8+
public class StringUtilsDemo {
9+
public static void remove(){
10+
String str= StringUtils.remove("abc","bc");
11+
System.out.println(str);
12+
}
13+
14+
public static void stringCounts(){
15+
int count=StringUtils.countMatches("abcabcda","a");
16+
System.out.println(count);
17+
18+
}
19+
20+
public static void empty(){
21+
if( StringUtils.isEmpty(null) ) {
22+
System.out.println("null检测为空,不会报空指针异常");
23+
}
24+
if(StringUtils.isEmpty(" ")) {
25+
System.out.println("字符串为空");
26+
}
27+
;
28+
}
29+
30+
public static void main(String[] args) {
31+
32+
}
33+
34+
35+
}

0 commit comments

Comments
 (0)