-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathFileHandlingActivity.java
More file actions
109 lines (90 loc) · 3.68 KB
/
FileHandlingActivity.java
File metadata and controls
109 lines (90 loc) · 3.68 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
import java.io.File;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
public class FileHandlingActivity {
public static void debugFileOperation() {
try {
// Creating a file with an invalid name (forward slash is invalid for file names on many OS)
File file = new File("fileName.txt");
// Attempting to write to the invalid file
FileWriter writer = new FileWriter(file);
writer.write("Will this fail?");
writer.close();
} catch (IOException e) {
System.out.println("An error occurred: " + e.getMessage());
e.printStackTrace();
}
}
public static void main(String[] args) {
// Your code here
// a. Create main directory
File directory = new File("JavaFileSystem");
directory.mkdir();
// b. Create three text files
// "notes.txt, data.txt, log.txt"
File notes = new File(directory, "notes.txt");
File data = new File(directory, "data.txt");
File log = new File(directory, "log.txt");
try {
// c. Write messages to files
FileWriter notesWriter = new FileWriter(notes);
notesWriter
.write("These are my class notes for compsci. As u can see, they are empty.");
FileWriter dataWriter = new FileWriter(data);
dataWriter.write("Name: Matthew\nGrade: 12\nSSN:-1\nDOB: 3/17/2008");
FileWriter logWriter = new FileWriter(log);
logWriter.write("log(3)=3log(1)");
notesWriter.close();
dataWriter.close();
logWriter.close();
// d. Read and display file contents
FileReader notesReader = new FileReader(notes);
String notesStr = "";
while (notesReader.ready()) {
notesStr += (char) notesReader.read();
}
System.out.println(notesStr);
FileReader dataReader = new FileReader(data);
String dataStr = "";
while (dataReader.ready()) {
dataStr += (char) dataReader.read();
}
System.out.println(dataStr);
FileReader logReader = new FileReader(log);
String logStr = "";
while (logReader.ready()) {
logStr += (char) logReader.read();
}
System.out.println(logStr);
// e. Create backup directory
File backup = new File(directory, "Backup");
backup.mkdir();
// f. Copy contents to backup file
File newNotes = new File(backup, "notes.txt");
File newData = new File(backup, "data.txt");
File newLog = new File(backup, "log.txt");
FileWriter notesWriter2 = new FileWriter(newNotes);
notesWriter2.write(notesStr);
FileWriter dataWriter2 = new FileWriter(newData);
dataWriter2.write(dataStr);
FileWriter logWriter2 = new FileWriter(newLog);
logWriter2.write(logStr);
notesWriter2.close();
dataWriter2.close();
logWriter2.close();
// g. List all files in both directories
File[] files1 = directory.listFiles();
File[] files2 = backup.listFiles();
for (int i = 0; i < files1.length; i++) {
System.out.println(files1[i]);
}
for (int i = 0; i < files2.length; i++) {
System.out.println(files2[i]);
}
} catch (IOException e) {
System.out.println("gng u a bum for that");
}
debugFileOperation();
}
}