Java I/O

一般在进行文件操作的时候要进行异常处理,养成好习惯

主要学习的就是关于文件的一些操作,并没有学习流。

主要用到的还是File,FileWriter, Scanner

前面的代码没有加异常捕捉,在后面有完整代码

文件的创建

  • 创建一个文件对象
  • 进行创建,如果成功返回true
1
2
File file = new File("./filename.txt");
file.createNewFile();

文件写入

  • 创建一个可以写入的对象
  • 写入
  • 关闭
1
2
3
FileWriter fileWriter = new FileWriter("./filename.txt");
fileWriter.write("file1 \nfile2 \n");
fileWriter.close();

文件读取

  • 创建一个文件对象
  • 用这个文件对象创建一个读取文件的Scanner
  • 读取
  • 关闭
1
2
3
4
5
6
7
File file = new File("./filename.txt");
Scanner reader = new Scanner(file);
while (reader.hasNextLine()){
String data = reader.nextLine();
System.out.println(data);
}
reader.close()

删除文件

  • 建立一个文件对象
  • 删除
1
2
3
4
5
6
7
8
public class Deletefile {
public static void main(String[] args) {
File file = new File("./src/TestFile/FileIO/TestDelete");

if (file.delete()){
System.out.println("delete success!");
}
}

查看文件信息

  • 创建一个文件对象
  • 对文件对象进行查看
1
2
3
4
5
6
File file = new File("./filename.txt");
file.getName();
file.getAbsolutePath();
file.canWrite();
file.canRead();
file.length();

完整代码

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
package TestFile.FIleIO;

import java.io.*;
import java.util.Scanner;

public class fileIOread {
public static void main(String[] args) {
// 创建一个新的文件 filewrite
try {
File file = new File("./src/TestFile/FileIO/filewrite.txt");
if (file.createNewFile()){
System.out.println("file create success!");
} else {
System.out.println("failed!");
}
} catch (IOException e){
e.printStackTrace();
}

// 写入文件
try {
FileWriter fileWriter = new FileWriter("./src/TestFile/FileIO/filewrite.txt");
fileWriter.write("file1 \n file2 \n name \n age \n sex");
fileWriter.close();
} catch (IOException e){
e.printStackTrace();
}

// 读文件
try {
File file = new File("./src/TestFile/FileIO/filewrite.txt");
if (file.canRead()){
Scanner fileReader = new Scanner(file);
while (fileReader.hasNextLine()){
String data = fileReader.nextLine();
System.out.println(data);
}
fileReader.close();
} else{
System.out.println("deny read");
}


} catch (FileNotFoundException f){
f.printStackTrace();
}
}
}