12
3 importjava.io.BufferedReader;4 importjava.io.BufferedWriter;5 importjava.io.File;6 importjava.io.FileInputStream;7 importjava.io.FileNotFoundException;8 importjava.io.FileOutputStream;9 importjava.io.IOException;10 importjava.io.InputStreamReader;11 importjava.io.OutputStreamWriter;12 importjava.io.UnsupportedEncodingException;13
14 /**
15 * 文件读取四步骤16 * ---------要保证文件存在,不能保证就需判断是否存在,在这里手动创建一个文件text.txt以确保存在17 * 1:获取文件18 * 2:将文件写入到文件输入流中19 * 3:将文件流写入到输入流Reader中20 * 4:将输入流文件放到缓冲流BufferReader中21 * 四步骤:执行完毕文件会读入缓冲流22 * 5:从缓冲流中每次读取一行打印输出23 * 6:关闭资源24 * 文件写出同理:25 *@authorNEXT_NiGHT26 *27 */
28 public classFileRW {29
30 public static voidmain(String[] args) {31 //----------------------文件读入32 //1
33 File file = new File("text.txt");34 try {
35 //2
36 FileInputStream fis=new FileInputStream(file);
37 //3
38 InputStreamReader isr=new InputStreamReader(fis,"utf-8");//FileInputStream字符流转换成字节流要注意编码
39 //4
40 BufferedReader br=new BufferedReader(isr);
41 //5
42 String line;//用来保存读取到的数据
43 while((line = br.readLine())!=null){//每次读取一行不为空
44 System.out.println(line);
45 }46 //6
47 br.close();48 isr.close();49 fis.close();50
51
52 //----------------------文件写出53 //1链接文件
54 File file2=new File("newtext.txt");55 //2文件输出流
56 FileOutputStream fos=new FileOutputStream(file2);
57 //3输出流
58 OutputStreamWriter os=new OutputStreamWriter(fos,"utf-8");
59 //4写入缓冲流
60 BufferedWriter bw=new BufferedWriter(os);
61 //5写入
62 bw.write("七月七日长生殿\n");
63 bw.write("夜半无人私语时\n");
64 bw.write("在天月作比翼鸟\n");
65 bw.write("在地愿为连理枝\n");66 //6关闭资源
67 bw.close();68 os.close();69 fos.close();70 } catch(FileNotFoundException e) {71 e.printStackTrace();72 } catch(UnsupportedEncodingException e) {73 e.printStackTrace();74 } catch(IOException e) {75 e.printStackTrace();76 }77
78
79
80
81 }82 }