字节输入输出流

来源:互联网 发布:程序员的算法趣题 pdf 编辑:程序博客网 时间:2024/04/28 23:51

黑马程序员

                                        字节输入输出流

------- <a href="http://www.itheima.com" target="blank">android培训</a>、<a href="http://www.itheima.com" target="blank">java培训</a>、期待与您交流! ----------

  输入、输出流提供一条通道程序,可以使用这条通道读取源中的数据或把数据传送到目的地。把输入流的指向称作源,而输出流的指向是数据要去的目的地。下面介绍几种常用输入输出流。

首先先介绍File类,File类对象主要用来获取文件本身的一些信息,例如文件所在目录、文件的长度。

构造方法有:

File(String filename)

File(String directoryPath,String filename)

File(File f,String filename)

File类常用的方法有:

Public String getName():获取文件名字

Public Boolean canRead():判断文件是否可读

Public Boolean canWrite():判断文件是否可写

Public Boolean exits():判断文件是否存在

Public String getAbsloutePath():获取文件的绝对路径

一、文件字节流

  文件字节输入流:FileInputStream输入流打开一个到达文件的输入流,继承InputStream类的read方法,其格式如下:

Int read();

Int read(byte b[]);

Int read(byte b[],int off,int len);

Read方法顺序的读取文件,只要不关闭流,每次调用read方法就会顺序的读取文件中其他内容,知道文件的末尾或字节流的关闭。关闭字节流的方法为:close().

例如:

import java.io.*;

publicclass InputStream {

    publicstaticvoid main(String args[]){

       int b;

       byte t[]=newbyte[10];

       try{

           File f=new File("ha.java");

           FileInputStream in=new FileInputStream(f);

           while((b=in.read(t,0,10))!=-1){

              String s=new String(t,0,b);

              System.out.print(s);

           }

           in.close();

       }

       catch(IOException e){

           System.out.print("error");}}}

文件字节输出流:对应输出流为FileOutputStream 类,其构造方法为:

FileOutputStream(Stringname)

FileOutputStream(Filefile)

其调用writebyte b[])方法把字节写入到文件

Public voidwrite(byte b[])

Public voidwrite(byte[],int off,int len)

例如:

import java.io.*;

publicclass Output {

    publicstaticvoid main(String[] args) {

       //TODO Auto-generatedmethod stub

       byte[] b="你好,最近".getBytes();

       try{

           FileOutputStream out=new FileOutputStream("h.txt");

           out.write(b);

           out.write(b,0,b.length);

       }

       catch(IOException e ){

           System.out.println("error");

       }

    }

}

------- <a href="http://www.itheima.com" target="blank">android培训</a>、<a href="http://www.itheima.com" target="blank">java培训</a>、期待与您交流! ----------

0 0
原创粉丝点击