本文实例为大家分享了文件字符流的使用方法,供大家参考,具体内容如下
案例1:
读取一个文件并写入到另一个文件中,char[] 来中转。
首先要在E盘下创建一个文本文档,命名为test.txt,输入一些字符串。
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
|
public class Demo_5 { public static void main(String[] args) { FileReader fr= null ; //文件取出字符流对象(输入流) FileWriter fw= null ; //写入到文件(输出流) try { fr= new FileReader( "e:\\test.txt" ); //创建一个fr对象 fw= new FileWriter( "d:\\test.txt" ); //创建输出对象 char []c= new char [ 1024 ]; //读入到内存 int n= 0 ; //记录实际读取到的字符数 while ((n=fr.read(c))!=- 1 ){ //String s=new String(c,0,n); fw.write(c, 0 ,n); } e.printStackTrace(); } finally { try { fr.close(); fw.close(); } catch (Exception e) { e.printStackTrace(); } } } } |
打开D盘的test.txt文件,出现相同的字符串。
案例2:为了提高效率引入了缓冲字符流
依然实现读取一个文件并写入到另一个文件中,直接操作String。
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
|
public class Demo_6 { public static void main(String[] args) { BufferedReader br= null ; BufferedWriter bw= null ; try { FileReader fr= new FileReader( "e:\\test.txt" ); //先创建FileReader对象 br= new BufferedReader(fr); FileWriter fw= new FileWriter( "d:\\test1.txt" ); //创建FileWriter对象 bw= new BufferedWriter(fw); String s= "" ; while ((s=br.readLine())!= null ){ //循环读取文件,s不为空即还未读完毕 bw.write(s+ "\r\n" ); //输出到磁盘,加上“\r\n”为了实现换行 } } catch (Exception e){ e.printStackTrace(); } finally { try { br.close(); bw.close(); } catch (Exception e) { e.printStackTrace(); } } } } |
打开D盘的test1.txt文件,出现相同的字符串。
总结:字节流操作对象byte,字符流操作对象char,缓冲字符流操作对象String。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持服务器之家。
原文链接:http://www.cnblogs.com/cxq1126/archive/2017/08/11/7345705.html