java基础之字节流(IO流)

一)

IO流(输入流、输出流)

字节流、字符流

1、InputStream



      

2、OutputStream


二)

EOF=End  读到-1就读到结尾


三)

输入流基本方法

int b = in.read(); 读取一个字节无符号填充到int低八位.-1是EOF

in.read(byte[] buf)

in.read(byte[] buf, int start, int size)



四) 输出流基本方法

out.write(int b) 写出一个byte到流,b的低8位

out.write(byte[] buf)将buf字节数组都写入到流

out.wirte(byte[] buf,int start, int size)


五) FileInputStream   文件输入流   -->具体实现了在文件上读取数据

   FileInputStream 从文件系统中的某个文件中获得输入字节。

   FileInputStream 用于读取诸如图像数据之类的原始字节流。要读取字符流,


     FileInputStream(File file)

   FileInputStream(String name)

   

   /*单字节读取  */

   public int read()
         throws IOException
从此输入流中读取一个数据字节。如果没有输入可用,则此方法将阻塞。

  

    public void close()
           throws IOException
关闭此文件输入流并释放与此流有关的所有系统资源。

如果此流有一个与之关联的通道,则关闭该通道。


/*批量读取   */

public int read(byte[] b,
                int off,
                int len)
         throws IOException
从此输入流中将最多 len 个字节的数据读入一个 byte 数组中。如果 len 不为 0,则在输入可用之前,该方法将阻塞;否则,不读取任何字节并返回 0。 


六)FileOutputStream  文件输出流  -->实现了向文件写出byte数据的方法

      文件输出流是用于将数据写入 FileFileDescriptor 的输出流

    

      

    public FileOutputStream(String name)
                 throws FileNotFoundException
创建一个向具有指定名称的文件中写入数据的输出文件流。创建一个新 FileDescriptor 对象来表示此文件连接。


 

       

      public FileOutputStream(String name,
                        boolean append)
                 throws FileNotFoundException
创建一个向具有指定 name 的文件中写入数据的输出文件流。如果第二个参数为 true,则将字节写入文件末尾处,而不是写入文件开始处。创建一个新 FileDescriptor 对象来表示此文件连接。

  

      public void write(byte[] b)
           throws IOException
b.length 个字节从指定 byte 数组写入此文件输出流中。 



     public void write(byte[] b,
                  int off,
                  int len)
           throws IOException
将指定 byte 数组中从偏移量 off 开始的 len 个字节写入此文件输出流。 


close()
          关闭此文件输出流并释放与此流有关的所有系统资源。


七) DataInputStream / DataOutputStream  数据输入输出流

   对“流”功能的扩展,可以更加方便的读取int,long,字符等类型数据

  

   DataOutputStream

       writeInt(int v)、writeDouble(double v)、writeUTF(String str)

  DataOutputStream(OutputStream out)
          创建一个新的数据输出流,将数据写入指定基础输出流。



DataInputStream

DataInputStream(InputStream in)


readDouble()

readUTF()



八)字节缓冲流 BufferedInputStream /  BufferedOutputStream

这两个流类中位IO提供了带缓冲区的操作,一般打开文件进行读写操作时,都加上缓冲,提高IO性能


        BufferedInputStream(InputStream in, int size)
          创建具有指定缓冲区大小的 BufferedInputStream 并保存其参数,即输入流 in,以便将来使用。


BufferedOutputStream(OutputStream out, int size)
          创建一个新的缓冲输出流,以将具有指定缓冲区大小的数据写入指定的底层输出流。

        










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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值