Java FileInputStream和FileOutputStream

来源:互联网 发布:.uno域名 编辑:程序博客网 时间:2024/05/16 08:38

FileInputStream 是文件输入流,它继承于InputStream。通常,我们使用FileInputStream从某个文件中获得输入字节。
FileOutputStream 是文件输出流,它继承于OutputStream。通常,我们使用FileOutputStream 将数据写入 File 或 FileDescriptor 的输出流。

FileInputStream 函数接口:

FileInputStream(File file)         // 构造函数1:创建“File对象”对应的“文件输入流”FileInputStream(FileDescriptor fd) // 构造函数2:创建“文件描述符”对应的“文件输入流”FileInputStream(String path)       // 构造函数3:创建“文件(路径为path)”对应的“文件输入流”int      available()             // 返回“剩余的可读取的字节数”或者“skip的字节数”void     close()                 // 关闭“文件输入流”FileChannel      getChannel()    // 返回“FileChannel”final FileDescriptor     getFD() // 返回“文件描述符”int      read()                  // 返回“文件输入流”的下一个字节int      read(byte[] buffer, int byteOffset, int byteCount) // 读取“文件输入流”的数据并存在到buffer,从byteOffset开始存储,存储长度是byteCount。long     skip(long byteCount)    // 跳过byteCount个字节

FileOutputStream 函数接口:

FileOutputStream(File file)                   // 构造函数1:创建“File对象”对应的“文件输入流”;默认“追加模式”是false,即“写到输出的流内容”不是以追加的方式添加到文件中。FileOutputStream(File file, boolean append)   // 构造函数2:创建“File对象”对应的“文件输入流”;指定“追加模式”。FileOutputStream(FileDescriptor fd)           // 构造函数3:创建“文件描述符”对应的“文件输入流”;默认“追加模式”是false,即“写到输出的流内容”不是以追加的方式添加到文件中。FileOutputStream(String path)                 // 构造函数4:创建“文件(路径为path)”对应的“文件输入流”;默认“追加模式”是false,即“写到输出的流内容”不是以追加的方式添加到文件中。FileOutputStream(String path, boolean append) // 构造函数5:创建“文件(路径为path)”对应的“文件输入流”;指定“追加模式”。void                    close()      // 关闭“输出流”FileChannel             getChannel() // 返回“FileChannel”final FileDescriptor    getFD()      // 返回“文件描述符”void                    write(byte[] buffer, int byteOffset, int byteCount) // 将buffer写入到“文件输出流”中,从buffer的byteOffset开始写,写入长度是byteCount。void                    write(int oneByte)  // 写入字节oneByte到“文件输出流”中
import java.io.FileNotFoundException;import java.io.IOException;import java.io.FileOutputStream;/** * FileOutputStream * 节点流 * 用于向文件中写出字节的流 * @author Administrator * */public class FileDemo {    public static void main(String[] args) throws IOException{        FileOutputStream fos=new FileOutputStream("fos.dat");        fos.write(97);        String str="杭州西湖";        byte[] buf=str.getBytes("UTF-8");        fos.write(buf);        fos.close();    }}
import java.io.FileInputStream;import java.io.FileNotFoundException;import java.io.IOException;import java.io.FileOutputStream;/** * FileInputStream * 节点流 * 用于从文件中读取字节的流 * @author Administrator * */public class FileDemo {    public static void main(String[] args) throws IOException{        FileInputStream fis=new FileInputStream("fos.dat");        int i=fis.read();        System.out.println(i);//97        byte[] buf=new byte[12];        int len=fis.read(buf);        String str=new String(buf,"UTF-8");        System.out.println(str);        fis.close();    }}
import java.io.FileInputStream;import java.io.IOException;import java.io.FileOutputStream;/** * 使用文件的字节输入输出流实现文件的复制 * @author Administrator * */public class FileDemo {    public static void main(String[] args) throws IOException{        FileInputStream fis=new FileInputStream("fos.dat");        FileOutputStream fos= new FileOutputStream("copy.dat");        byte[] buf = new byte[24];        int len = -1;        while((len=fis.read(buf))!=-1){            fos.write(buf,0,len);        }        System.out.println("复制完毕");        fis.close();        fos.close();    }}
0 0
原创粉丝点击