Skip to content

Commit 3c830e1

Browse files
committed
add fileOperations :)
1 parent 7b6a869 commit 3c830e1

File tree

4 files changed

+464
-0
lines changed

4 files changed

+464
-0
lines changed

FilesOperations/pom.xml

Lines changed: 43 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,43 @@
1+
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
2+
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
3+
<modelVersion>4.0.0</modelVersion>
4+
5+
<groupId>org.example</groupId>
6+
<artifactId>FilesOperations</artifactId>
7+
<version>1.0-SNAPSHOT</version>
8+
<packaging>jar</packaging>
9+
10+
<name>FilesOperations</name>
11+
<url>http://maven.apache.org</url>
12+
13+
<properties>
14+
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
15+
</properties>
16+
17+
<dependencies>
18+
<dependency>
19+
<groupId>junit</groupId>
20+
<artifactId>junit</artifactId>
21+
<version>3.8.1</version>
22+
<scope>test</scope>
23+
</dependency>
24+
<dependency>
25+
<groupId>commons-io</groupId>
26+
<artifactId>commons-io</artifactId>
27+
<version>2.2</version>
28+
<scope>compile</scope>
29+
</dependency>
30+
</dependencies>
31+
<build>
32+
<plugins>
33+
<plugin>
34+
<groupId>org.apache.maven.plugins</groupId>
35+
<artifactId>maven-compiler-plugin</artifactId>
36+
<configuration>
37+
<source>8</source>
38+
<target>8</target>
39+
</configuration>
40+
</plugin>
41+
</plugins>
42+
</build>
43+
</project>
Lines changed: 313 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,313 @@
1+
package org.example;
2+
3+
import java.io.*;
4+
import java.util.Scanner;
5+
6+
/**
7+
* @author Whoopsunix
8+
*/
9+
public class FileRead {
10+
/**
11+
* abstract java.io.Reader
12+
* java.io.InputStreamReader
13+
* 自带的 read()
14+
*/
15+
public String read_InputStreamReader(String filePath) throws Exception {
16+
FileInputStream fileInputStream = new FileInputStream(filePath);
17+
InputStreamReader inputStreamReader = new InputStreamReader(fileInputStream);
18+
int character;
19+
StringBuilder content = new StringBuilder();
20+
while ((character = inputStreamReader.read()) != -1) {
21+
// 处理读取到的字符
22+
char charValue = (char) character;
23+
content.append(charValue);
24+
}
25+
inputStreamReader.close();
26+
27+
return content.toString();
28+
}
29+
30+
/**
31+
* abstract java.io.Reader
32+
* java.io.InputStreamReader
33+
* java.io.BufferedReader
34+
*/
35+
public String read_InputStreamReader_BufferedReader(String filePath) throws Exception {
36+
FileInputStream fileInputStream = new FileInputStream(filePath);
37+
InputStreamReader inputStreamReader = new InputStreamReader(fileInputStream);
38+
BufferedReader bufferedReader = new BufferedReader(inputStreamReader);
39+
String line;
40+
StringBuilder content = new StringBuilder();
41+
while ((line = bufferedReader.readLine()) != null) {
42+
content.append(line).append("\n");
43+
}
44+
bufferedReader.close();
45+
return content.toString();
46+
}
47+
48+
public String read_InputStreamReader_CharArrayReader(String filePath) throws Exception {
49+
FileInputStream fileInputStream = new FileInputStream(filePath);
50+
InputStreamReader inputStreamReader = new InputStreamReader(fileInputStream);
51+
char[] charArray = new char[1024];
52+
int bytesRead = inputStreamReader.read(charArray);
53+
CharArrayReader charArrayReader = new CharArrayReader(charArray, 0, bytesRead);
54+
55+
int character;
56+
StringBuilder content = new StringBuilder();
57+
while ((character = charArrayReader.read()) != -1) {
58+
// 处理读取到的字符
59+
content.append((char) character);
60+
}
61+
charArrayReader.close();
62+
return content.toString();
63+
}
64+
65+
66+
/**
67+
* 对照组
68+
*/
69+
public String read_InputStreamReader_text(String str) throws Exception {
70+
InputStream inputStream = new ByteArrayInputStream(str.getBytes());
71+
72+
InputStreamReader inputStreamReader = new InputStreamReader(inputStream);
73+
BufferedReader bufferedReader = new BufferedReader(inputStreamReader);
74+
String line;
75+
StringBuilder content = new StringBuilder();
76+
while ((line = bufferedReader.readLine()) != null) {
77+
content.append(line).append("\n");
78+
}
79+
bufferedReader.close();
80+
return content.toString();
81+
}
82+
83+
// java.io.FileInputStream
84+
public String read_FileInputStream(String filePath) {
85+
String content = "";
86+
try {
87+
FileInputStream fileInputStream = new FileInputStream(filePath);
88+
byte[] data = new byte[fileInputStream.available()];
89+
fileInputStream.read(data);
90+
fileInputStream.close();
91+
content = new String(data, "UTF-8");
92+
System.out.println(content);
93+
} catch (Exception e) {
94+
95+
}
96+
return content;
97+
}
98+
99+
/**
100+
* FileReader
101+
*/
102+
// java.io.BufferedReader.readLine()
103+
public String read_FileReader_bufferedReader1(String filePath) throws Exception {
104+
StringBuilder content = new StringBuilder();
105+
FileReader reader = new FileReader(filePath);
106+
BufferedReader bufferedReader = new BufferedReader(reader);
107+
String line;
108+
while ((line = bufferedReader.readLine()) != null) {
109+
content.append(line).append("\n");
110+
}
111+
bufferedReader.close();
112+
113+
return content.toString();
114+
}
115+
116+
// java.io.BufferedReader.read()
117+
public String read_FileReader_bufferedReader2(String filePath) throws Exception {
118+
StringBuilder content = new StringBuilder();
119+
FileReader reader = new FileReader(filePath);
120+
BufferedReader bufferedReader = new BufferedReader(reader);
121+
int character;
122+
while ((character = bufferedReader.read()) != -1) {
123+
// 处理读取到的字符
124+
char charValue = (char) character;
125+
content.append(charValue);
126+
}
127+
bufferedReader.close();
128+
129+
return content.toString();
130+
}
131+
132+
// java.io.FileReader.read()
133+
// 不套其他 直接通过 FileReader 读取
134+
public String read_FileReader(String filePath) throws Exception {
135+
StringBuilder content = new StringBuilder();
136+
FileReader reader = new FileReader(filePath);
137+
int character;
138+
while ((character = reader.read()) != -1) {
139+
// 处理读取到的字符
140+
char charValue = (char) character;
141+
content.append(charValue);
142+
}
143+
reader.close();
144+
145+
return content.toString();
146+
}
147+
148+
// java.io.LineNumberReader.read()
149+
public String read_FileReader_LineNumberReader(String filePath) throws Exception {
150+
StringBuilder content = new StringBuilder();
151+
FileReader reader = new FileReader(filePath);
152+
LineNumberReader lineNumberReader = new LineNumberReader(reader);
153+
String line;
154+
while ((line = lineNumberReader.readLine()) != null) {
155+
content.append(line).append("\n");
156+
}
157+
lineNumberReader.close();
158+
159+
return content.toString();
160+
}
161+
162+
// java.io.CharArrayReader.read()
163+
public String read_FileReader_CharArrayReader(String filePath) throws Exception {
164+
StringBuilder content = new StringBuilder();
165+
166+
FileReader reader = new FileReader(filePath);
167+
char[] charArray = new char[1024];
168+
int bytesRead = reader.read(charArray);
169+
CharArrayReader charArrayReader = new CharArrayReader(charArray, 0, bytesRead);
170+
171+
int character;
172+
while ((character = charArrayReader.read()) != -1) {
173+
// 处理读取到的字符
174+
char charValue = (char) character;
175+
content.append(charValue);
176+
}
177+
178+
return content.toString();
179+
}
180+
181+
// java.io.PushbackReader
182+
public String read_PushbackReader(String filePath) throws Exception {
183+
StringBuilder content = new StringBuilder();
184+
FileReader reader = new FileReader(filePath);
185+
PushbackReader pushbackReader = new PushbackReader(reader);
186+
int character;
187+
while ((character = pushbackReader.read()) != -1) {
188+
// 处理读取到的字符
189+
char charValue = (char) character;
190+
content.append(charValue);
191+
}
192+
pushbackReader.close();
193+
194+
return content.toString();
195+
}
196+
197+
/**
198+
* Files
199+
*/
200+
// java.nio.file.Files.readAllBytes()
201+
public String read_Files_readAllBytes(String filePath) throws Exception {
202+
byte[] data = java.nio.file.Files.readAllBytes(java.nio.file.Paths.get(filePath));
203+
return new String(data, "UTF-8");
204+
}
205+
206+
// java.nio.file.Files.readAllLines()
207+
public String read_Files_readAllLines(String filePath) throws Exception {
208+
StringBuilder content = new StringBuilder();
209+
java.util.List<String> lines = java.nio.file.Files.readAllLines(java.nio.file.Paths.get(filePath));
210+
for (String line : lines) {
211+
content.append(line).append("\n");
212+
}
213+
return content.toString();
214+
}
215+
216+
/**
217+
* Scanner
218+
*/
219+
// java.util.Scanner
220+
public String read_Scanner_File(String filePath) throws Exception {
221+
StringBuilder content = new StringBuilder();
222+
Scanner scanner = new Scanner(new File(filePath));
223+
while (scanner.hasNextLine()) {
224+
content.append(scanner.nextLine()).append("\n");
225+
}
226+
scanner.close();
227+
return content.toString();
228+
}
229+
230+
// java.util.Scanner
231+
public String read_Scanner_Path(String filePath) throws Exception {
232+
StringBuilder content = new StringBuilder();
233+
Scanner scanner = new Scanner(java.nio.file.Paths.get(filePath));
234+
while (scanner.hasNextLine()) {
235+
content.append(scanner.nextLine()).append("\n");
236+
}
237+
scanner.close();
238+
return content.toString();
239+
}
240+
241+
/**
242+
* java.io.RandomAccessFile
243+
* readLine()
244+
*/
245+
public String read_RandomAccessFile_readLine(String filePath) throws Exception {
246+
RandomAccessFile randomAccessFile = new RandomAccessFile(filePath, "r");
247+
StringBuilder content = new StringBuilder();
248+
String line;
249+
// read()
250+
while ((line = randomAccessFile.readLine()) != null) {
251+
content.append(line).append("\n");
252+
}
253+
254+
randomAccessFile.close();
255+
return content.toString();
256+
}
257+
258+
/**
259+
* java.io.RandomAccessFile
260+
* read()
261+
*/
262+
public String read_RandomAccessFile_read(String filePath) throws Exception {
263+
RandomAccessFile randomAccessFile = new RandomAccessFile(filePath, "r");
264+
StringBuilder content = new StringBuilder();
265+
int character;
266+
// read()
267+
while ((character = randomAccessFile.read()) != -1) {
268+
// 处理读取到的字符
269+
char charValue = (char) character;
270+
content.append(charValue);
271+
}
272+
273+
randomAccessFile.close();
274+
return content.toString();
275+
}
276+
277+
// java.nio.channels.FileChannel
278+
public String read_FileChannel(String filePath) throws Exception {
279+
StringBuilder content = new StringBuilder();
280+
FileInputStream fileInputStream = new FileInputStream(filePath);
281+
java.nio.channels.FileChannel fileChannel = fileInputStream.getChannel();
282+
java.nio.ByteBuffer byteBuffer = java.nio.ByteBuffer.allocate(1024);
283+
while (fileChannel.read(byteBuffer) > 0) {
284+
byteBuffer.flip();
285+
content.append(new String(byteBuffer.array(), 0, byteBuffer.limit()));
286+
byteBuffer.clear();
287+
}
288+
fileChannel.close();
289+
fileInputStream.close();
290+
return content.toString();
291+
}
292+
293+
// java.nio.channels.FileChannel.open
294+
public String read_FileChannel_open(String filePath) throws Exception {
295+
StringBuilder content = new StringBuilder();
296+
java.nio.channels.FileChannel fileChannel = java.nio.channels.FileChannel.open(java.nio.file.Paths.get(filePath));
297+
java.nio.ByteBuffer byteBuffer = java.nio.ByteBuffer.allocate(1024);
298+
while (fileChannel.read(byteBuffer) > 0) {
299+
byteBuffer.flip();
300+
content.append(new String(byteBuffer.array(), 0, byteBuffer.limit()));
301+
byteBuffer.clear();
302+
}
303+
fileChannel.close();
304+
return content.toString();
305+
}
306+
307+
/**
308+
* org.apache.commons.io.FileUtils
309+
*/
310+
public String read_FileUtils(String filePath) throws Exception {
311+
return org.apache.commons.io.FileUtils.readFileToString(new File(filePath), "UTF-8");
312+
}
313+
}

0 commit comments

Comments
 (0)