首页 > 编程语言 > 详细

Java之IO

时间:2019-12-23 23:56:21      阅读:126      评论:0      收藏:0      [点我收藏+]

总结

  1. iO流用来处理设备之间的数据传输。
  2. Java程序中,对于数据的输入/输出操作以”流(stream)” 的方式进行
  3. 输入input:读取外部数据(磁盘、光盘等存储设备的数据)到程序(内存)中。
  4. 输出output:将程序(内存)数据输出到磁盘、光盘等存储设备中

IO流体系

  1. 按操作数据单位不同分为:字节流(8 bit),字符流(16 bit)
  2. 按数据流的流向不同分为:输入流,输出流
  3. 按流的角色的不同分为:节点流,处理流
  4. Java的IO流共涉及40多个类,实际上非常规则,都是从如下4个抽象基类派生的。
    由这四个类派生出来的子类名称都是以其父类名作为子类名后缀。

技术分享图片

import java.io.FileInputStream;
import java.io.FileOutputStream;

public class Test3 {
    public static void main(String[] args) {
        //文件字节输入流
        Test3.testFileInputStream();
        //文件字节输出流
        Test3.testOutputStream();
    }
    //文件字节输入流
    public static void testFileInputStream() {
        try {
            //创建FileInputStream对象
            FileInputStream in = new FileInputStream("D:\\test\\tt.txt");
            //定义byte类型的数组,设置一个读取数据的长度
            byte[] b = new byte[10];
            //in.read(b)方法有一个返回值,返回值是读取的数据的长度,如果读取到最后一个数据,还会向后读一个
            //也就意味着当in.read(b)的返回值是-1时,整个文件读取完毕了
//          in.read(b);
//          System.out.println(new String(b));//打印要转string字符
//          System.out.println(b);//[B@123772c4
//          in.close();
            
            int len = 0;
            while((len=in.read(b)) != -1) {
                //参数1是缓冲数据的数组,参数2是数组的哪个位置开始转化字符串,参数总共转化几个字符
                System.out.println(new String(b,0,len));
                
            }
            in.close();
        } catch (Exception e) {
            e.printStackTrace();
        }
        
    }
    
    //文件字节输出流
    public static void testOutputStream() {
        try {
            FileOutputStream out = new FileOutputStream("D:\\test\\tt1.txt");
            String str = "abdadf11232";
            out.write(str.getBytes());//将数据写到内存
            out.flush();//将内存中的数据刷写到硬盘
            out.close();//关闭流
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}

Java之IO

原文:https://www.cnblogs.com/istart/p/12088557.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!