字节流

 

12.3 字节流

一、字节输入流InputStream类

InputStreame类是所有面向字节的输入流的父类,为java.io包中的抽象类。类的定义如下:public abstract class InputStreame extends Object

属于InputStreame类的常用方法:

read():从流中读取数据。

skip():跳过流中若干字节数

available():返回流中可用字节数。

mark():在流中标记一个位置

reset():返回标记的位置

markSupport():是否支持标记和复位操作。

close():关闭流。

抽象类InputStream、OutputStream

 

二、字节输出流OutputStream 类

1、OutputStream类为所有面向字节的输出流的父类,Java.io包中的抽象类。类的定义:public avstract class OutputStream extends Object.

2、OutputStream类中声明了用于字节流输入的多个方法,包括写出数据、刷新缓冲区、关闭数据流。属于OutputStream类的方法:

Write(int b):将一个整数输出到流中。

Write(byte b[]):将数组中的数据输出到流中。

Write(byte b[],int off,int len):将数组b中从off指定的位置开始

长度的数据输出到流中。

flush():将缓冲区中的数据强制送出。

Close():关闭流

三、键盘输入

package com.hbsi.io;

 

import java.io.*;

 

public class DemoKeyInput {

    public static void main(String[] args) throws IOException{

       //int n=System.in.read();

       //System.out.print(char)n);

       BufferedInputStream bis=new BufferedInputStream(System.in);

       byte arr[]=new byte[10];

       int len=bis.read(arr);

       System.out.println(new String(arr,0,len));

      

    }

}

   

四、转换流

OutputStreamWriter和InputStreamReader的构造—他们本身是字符流,又具有转换的作用,因此在构造的时候,需要传入字节流对象

注意:要使用指定编码表时,必须使用转换流。

 

操作文件的字符流FileReader和FileWriter是转换流的子类,因此从他们的继承关系就可以清楚的发现,不管是使用字节流还是字符流实际上最终都是以字节的形式操作输入和输出的。

在使用FileReader操作文本数据时,该对象使用的是默认的编码表。如果要使用指定编码表时,必须使用转换流。

 

 

 

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值