zoukankan      html  css  js  c++  java
  • Java中IO流中所涉及到的各类方法介绍

     1 IO流之字节流
     2     (1)IO用于在设备间进行数据传输的操作    
     3     (2)分类:
     4         A:流向
     5             输入流    读取数据
     6             输出流    写出数据
     7         B:数据类型
     8             字节流    
     9                     字节输入流
    10                     字节输出流
    11             字符流
    12                     字符输入流
    13                     字符输出流
    14         注意:
    15             a:如果没有明确说明按照什么分,默认按照数据类型分。
    16             b:除非文件用windows自带的记事本打开我们能够读懂,才采用字符流,否则建议使用字节流。
    17     (3)FileOutputStream写出数据
    18         A:操作步骤
    19             a:创建字节输出流对象
    20             b:调用write()方法
    21             c:释放资源
    22             
    23         B:代码体现:
    24             FileOutputStream fos = new FileOutputStream("fos.txt");
    25             
    26             fos.write("hello".getBytes());
    27             
    28             fos.close();
    29             
    30         C:要注意的问题?
    31             a:创建字节输出流对象时,
    32             1.直接调用系统的功能区创建文件2.创建fileoutputStream对象3.将该对象指向这个文件
    33             
    34             b:为什么要close()
    35             首先是让流对象变成垃圾,这样就可以被垃圾回收器回收了,其次是通知系统区释放与该文件相关的资源
    36             c:如何实现数据的换行
    37             由于换行符也是可以读取的,因此一般是自动换行,
    38             d:如何实现数据的追加写入
    39             使用特殊的构造方法,将boolean append的参数写成true即可。
    40     (4)FileInputStream读取数据
    41         A:操作步骤
    42             a:创建字节输入流对象
    43             b:调用read()方法
    44             c:释放资源
    45             
    46         B:代码体现:
    47             FileInputStream fis = new FileInputStream("fos.txt");
    48             
    49             //方式1
    50             int by = 0;
    51             while((by = fis.read () ) != -1) {
    52                 System.out.print((char) by);
    53             }
    54             
    55             //方式2
    56             byte[] bys = new byte [1024];
    57             int len = 0;
    58             while((len = fis.read(bys)) != -1) {
    59                 System.out.print(new String(bys,0,len)); //注意此处在读取数据时打印的数据一定是最后一次读取
    60                                     //到的数组的实际长度,每一次读取数据都是下一次的数组覆
    61                                     //盖上一次的数组中对应位置的元素值
    62             }
    63             
    64             fis.close();
    65 
    66 
    67 
    68 IO流之字节流
    69             字符输入流
    70                 基类:abstract Reader
    71                     int read():一次读取一个字符    --->与上面的字节流操作一致
    72                     int read(char[] chs):一次读取一个字符数组    --->与上面的字节流操作一致
    73 
    74             |--InputStreamReader 75 |
                                --FileReader这个是简化方式一般使用该类
                    
                                76 |--BufferedReader

                                77 String readLine():一次读取一个字符串

       78 |--字符输出流 基类:Writer

    80               void write(int ch):一次写一个字符

    81               void write(char[] chs,int index,int len):一次写一个字符数组的一部分

    82 83                       |--OutputStreamWriter

    84                               |--FileWriter 由于该类名字简化一般直接使用该类

    85                         |--BufferedWriter

    86                          void newLine():写一个换行符

    87                          void write(String line):一次写一个字符串
  • 相关阅读:
    ubuntu server编译安装nginx
    XPath具体解释
    windows下安装,配置gcc编译器
    给字符数组赋值的方法
    开机黑屏 仅仅显示鼠标 电脑黑屏 仅仅有鼠标 移动 [已成功解决]
    MiinCMP1.0 SAE 新浪云版公布, 开源企业站点系统
    Mac下cocos2dx-3.0打包Android时,提示"SimpleAudioEngine.h"not found的解决方法
    GG同步到sqlserver报错一例 Invalid date format
    分布式文件系统
    动画clip仅仅读的解决的方法,以及动画关键帧回调的办法
  • 原文地址:https://www.cnblogs.com/fuck1/p/5342793.html
Copyright © 2011-2022 走看看