zoukankan      html  css  js  c++  java
  • Java Io流

    javaIO--字符流

     

    java提供字符流对自否刘式文件进行数据读写操作。字符输入流类是Reader及其子类,输出流是Writer及其子类。

    另外,上一篇javaIO写的是字节流,字节流方式也可以对以字符为基本类型的流式文件读写。

    1 采用文件字节流,将字节缓冲区数组中的字节转换成字符

    2 采用数据字节流,readChar()方法读取一个字符,writerChar(int c)方法写入一个字符,writerChars(String s)方法写入一个字符串。

    ps:DataInputStream类中的读取一行字符串的readLine()方法已过时,被BufferReader类中的readLine()取代。

    Reader类的子类:InputStreamReader(字节输入流转换成字符输入流   <--Filereader(文件字符输入流))、FilerReader(过滤器字符输入流)、PipedReader(管道字符输入流)、BufferReader(缓冲字符输入流)。

    Writer类的子类:OutputStreamReader(字节输入流转换成字符输入流   <--FileWriter(文件字符输入流))、FilerWriter(过滤器字符输入流)、PipedWriter(管道字符输入流)、BufferWriter(缓冲字符输入流)、PrintWriter(格式化字符输出流)。

    下面是一个对文件进行字符型IO的实例,将Fibonacci序列值写入文本

    复制代码
     1 public class IOtestChar {
     2     public static void main(String[] args) throws IOException {
     3         TextFile afile = new TextFile("fibText.txt");
     4         afile.writeToText();
     5         afile.readFromText();
     6     }
     7     
     8     //文本文件的读写操作,以字符串为单位:将fibonacci序列值写入文本文件
     9     static class TextFile{
    10         private String filename;
    11         public TextFile(String filename){
    12             this.filename = filename;
    13         }
    14         
    15         public void writeToText() throws IOException{
    16             FileWriter fout = new FileWriter(this.filename);
    17             short i = 0, j = 1;
    18             do{
    19                 fout.write(i + " " + j + " ");
    20                 i = (short)(i+j);
    21                 j = (short)(i+j);
    22             }while(i > 0);
    23             fout.close();
    24         }
    25         
    26         public void readFromText() throws IOException{
    27             FileReader fin = new FileReader(this.filename);
    28             BufferedReader bin = new BufferedReader(fin);
    29             System.out.println(this.filename + ": ");
    30             String aline = "";
    31             while((aline = bin.readLine()) != null){
    32                 System.out.println(aline);
    33             }
    34             bin.close();
    35             fin.close();
    36         }
    37     }
    38 }
    复制代码
  • 相关阅读:
    IDE-Android Studio 导入Ecplise项目不改变结构
    IDE-Android Studio -FAQ-使用习惯(不断更新 欢迎留言)
    IDE-Ecplise-代码注释 模版 编码规范 配色
    android- 远程调试
    phpstorm所有快捷键表格pdf
    phpstorm修改字体和大小
    phpstorm重构代码形式让阅读更简单
    七牛云到底好不好使用经历分享
    一篇文章搞懂php中类型转换
    彻底解决php判断a==0为真引发的问题-类型转换
  • 原文地址:https://www.cnblogs.com/dhm520/p/8507214.html
Copyright © 2011-2022 走看看