文件输入流的应用。修改第1题中的程序,读文件”data.txt”,将读到的数据输出在控制台
package
day49;
import
java.io.*;
import
java.io.File;
public
class
IO1 {
public
static
void
main(String[] args) {
String red=
"12345abcdef@#%&*软件工程"
;
File file=
new
File(
"D:\\data.txt"
);
try
{
FileWriter fw=
new
FileWriter(file);
BufferedWriter bw=
new
BufferedWriter(fw);
bw.write(red);
bw.newLine();
bw.close();
fw.close();
}
catch
(Exception e){
e.printStackTrace();
}
try
{
FileReader fr=
new
FileReader(file);
BufferedReader bf=
new
BufferedReader(fr);
String str1=
null
;
while
((str1=bf.readLine())!=
null
) {
System.out.print(str1);
}
bf.close();
fr.close();
}
catch
(Exception e) {
e.printStackTrace();
}
}
}
通过本次的学习和上机实践,对javaSE中IO的reader和writer有了初步的了解与掌握,使用FileWirter时要先创建一个文档,本来writer对字符的写是一个一个字符写入的,为了加快读取速度,创建一个BufferedWirter的对象,对writer流进行缓存,以一行一行的读取,加快了写的速率。对于FileReader也是同样的道理,加入缓冲流,加快读取的速度。在每一次读取和写入结束后,都要关闭流的进程,用close()方法进行关闭。在每一个FlieWirter和FlieReader都要包含在try语句中,因为为了避免File文件因缺失,删除等操作带来的错误。