java.io对象读写_Java-IO读写文件简单操作

本文详细介绍了如何在Java中使用面向字符的处理模式进行文件的读取与写入操作,包括创建文件路径对象、节点流及处理流,并提供了完整的代码示例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Java中读写文件的关键在于节点流和处理流的的选取上,而节点流和处理流又分为面向字节、面向字符两种处理模式,因此,需要根据实际的情况选择合适的处理模式,一般而言,往往尽量尝试使用面向字符的处理模式,如果程序代码无法编译成功,再尝试使用面向字节的的处理模式。

1.节点流和处理流的分类(包括了面向字节和面向字符)

d9fefe714ce51570dfa6e726dcaf30e4.png

2.读文件

(1)创建文件路径对象

//通过File创建文件路径对象

File filePath= new File("src/com/test/io/test.txt");

(2)创建节点流对象(面向字符的处理模式)

//创建节点流对象(面向字符的处理模式)

FileReader fr = new FileReader(filePath);

(3)创建处理流包装节点流对象(面向字符的处理模式):

//创建处理流包装节点流对象(面向字符的处理模式)

BufferedReader br = new BufferedReader(fr);

(4)读取文件内容(ready():告诉这个流是否准备好被读取。返回值类型:boolean)

//读取文件内容

while(br.ready()){

System.out.println(br.readLine());

}

(5)关闭处理流、节点流等

//关闭处理流、节点流等

br.close();

fr.close();

(6)测试

新建文件:test.txt

3ffda1a1bbdf2e7e6898e44a9a26265d.png

代码文件:demo.java

packagecom.test.io;

import java.io.*;

public classdemo {

public static void main(String[] args) throwsIOException {

//1.通过File创建文件路径对象

File filePath= new File("src/com/test/io/test.txt");

try{

//2.创建节点流对象(面向字符的处理模式)

FileReader fr = newFileReader(filePath);

//3.创建处理流包装节点流对象(面向字符的处理模式)

BufferedReader br = newBufferedReader(fr);

//4.读取文件内容

while(br.ready()){

System.out.println(br.readLine());

}

//5.关闭处理流、节点流等

br.close();

fr.close();

} catch(FileNotFoundException e) {

e.printStackTrace();

}

}

}

运行截图:

941c6b07277a064af350f5a2a07359f1.png

3.写文件

(1)创建文件路径对象

//通过File创建文件路径对象

File filePath = new File("src/com/test/io/test2.txt");

(2)创建节点流对象(面向字符的处理模式)

//创建节点流对象(面向字符的处理模式)

FileWriter fw = new FileWriter(filePath);

(3)创建处理流包装节点流对象(面向字符的处理模式):

//创建处理流包装节点流对象(面向字符的处理模式)

BufferedWriter bw = new BufferedWriter(fw);

(4)写入数据

//写入数据

bw.write("ABCDED\r\n");

bw.write("一二三四");

(5)关闭处理流、节点流等

//关闭处理流、节点流等

bw.close();

fw.close();

(6)测试:

代码文件:demo.java

packagecom.test.io;

import java.io.*;

public classdemo {

public static voidmain(String[] args) {

//1.通过File创建文件路径对象

File filePath = new File("src/com/test/io/test2.txt");

try{

//2.创建节点流对象(面向字符的处理模式)

FileWriter fw = newFileWriter(filePath);

//3.创建处理流包装节点流对象(面向字符的处理模式)

BufferedWriter bw = newBufferedWriter(fw);

//4.写入数据

bw.write("ABCDED\r\n");

bw.write("一二三四");

//5.关闭处理流、节点流等

bw.close();

fw.close();

} catch(IOException e) {

e.printStackTrace();

}

}

}

运行截图:

871b447eb8c96a84b20685c852703ee6.png

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值