• I/O之Writer-Reader


      1 import java.io.File;
      2 import java.io.FileNotFoundException;
      3 import java.io.FileReader;
      4 import java.io.FileWriter;
      5 import java.io.IOException;
      6 
      7 import org.junit.Test;
      8 
      9 public class RorW {
     10     // 测试 Reader Writer
     11     @Test
     12     public void test1() {
     13 
     14         // ---------------------创建测试文件---------------------
     15         File file = new File("E:/IO测试/测试.txt");
     16         if (!file.exists()) {
     17             file.getParentFile().mkdirs();
     18             try {
     19                 file.createNewFile();
     20             } catch (IOException e) {
     21                 e.printStackTrace();
     22             }
     23         }
     24 
     25         // ---------------------测试FileWriter-----------------------
     26         FileWriter fw = null;
     27         try {
     28             fw = new FileWriter(file);
     29             fw.write("这是测试输出流");
     30             // fw.write("这是测试输出流覆盖");
     31             // ==========================================================
     32             if (fw != null) {// FileWriter声明的引用,必须flush()和close()后才能重新赋值
     33                 try {
     34                     fw.flush();
     35                 } catch (IOException e) {
     36                     e.printStackTrace();
     37                 }
     38                 try {
     39                     fw.close();
     40                 } catch (IOException e) {
     41                     e.printStackTrace();
     42                 }
     43             }// FileWriter声明的引用,必须flush()和close()后才能重新赋值
     44                 // ==========================================================
     45             fw = new FileWriter(file, true);
     46             fw.write("+这是测试追加输出流");
     47         } catch (IOException e1) {
     48             e1.printStackTrace();
     49         } finally {
     50             if (fw != null) {
     51                 try {
     52                     fw.flush();
     53                 } catch (IOException e) {
     54                     e.printStackTrace();
     55                 }
     56                 try {
     57                     fw.close();
     58                 } catch (IOException e) {
     59                     e.printStackTrace();
     60                 }
     61             }
     62         }
     63 
     64         // ---------------------测试FileReader---------------------
     65         FileReader fr = null;
     66         try {
     67             fr = new FileReader(file);
     68             // ============单次只读取一个字符,返回int型编码
     69             int i = fr.read();
     70             System.out.println(i);
     71             System.out.println((char) i);// 将int型编码强制转换字符输出
     72             // ============
     73             while ((i = fr.read()) != -1) {// 当返回-1时表示到达文件末尾;
     74                 System.out.print((char) i);
     75             }
     76             System.out.println();// 为了输出好看
     77         } catch (FileNotFoundException e) {
     78             e.printStackTrace();
     79         } catch (IOException e) {
     80             e.printStackTrace();
     81         } finally {
     82             // 关闭资源
     83             if (fr != null) {
     84                 try {
     85                     fr.close();
     86                 } catch (IOException e) {
     87                     e.printStackTrace();
     88                 }
     89             }
     90         }
     91 
     92     }
     93 
     94     @Test
     95     public void test2() {
     96         try {
     97             FileReader fr = new FileReader("E:/IO测试/测试.txt");
     98             char[] cbuf = new char[1024];
     99             if (fr.ready()) {
    100                 fr.read(cbuf);
    101                 System.out.println(cbuf);
    102             }
    103         } catch (FileNotFoundException e) {
    104             e.printStackTrace();
    105         } catch (IOException e) {
    106             e.printStackTrace();
    107         }
    108     }
    109 
    110 }
    简简单单,不急不躁,每天充实而稳定的前行!
  • 相关阅读:
    Forword: ssh server for windows
    多浏览器测试
    GMT PST Beijing 时间
    Localization process
    【转】CentOS下配置PXE+Kickstart无人值守安装(Howto install CentOS through PXE+KickStart)
    CI hudson 远程部署
    s3cmd 安装使用指南
    Git
    关于Request.Form获取listbox所有项的问题
    Assembly.LoadFrom 与Assembly.Load 与 Assembly.LoadFile
  • 原文地址:https://www.cnblogs.com/tojiayu/p/6050105.html
Copyright © 2020-2023  润新知