java流和文件 保存字节级数据(写)

重要的知识点:

流的概念:  从数据源到I/O类的输入流(in)

        从I/O类数据接收器的输出流(out)

I/O包含子类较多的有四大家族:InputStream,OutputStream,Reader和Write类

              InputStream,OutputStream类均为抽象类,也就是说不能用他们创建实例对象,必须子类化之后才能建立对象

printStream是一个格式化的输出流,它含有如下形式的write()方法

public void write(int b)

public void wirte(byte b[], int off, int len);

除了write()方法外,printStream还有两个主要方法,print()和println(),举例如下:

System.out.println(“hello java");

System.out.print("x=",x);

主要差别是:print()方法是先把字符保存到缓冲区,然后当遇到换行符"\n"时再显示到屏幕上;而则是直接显示字符

package com.swust;
import java.io.*;
/*
 * 功能:按照双精度浮点型、整型、布尔型、字符型、和字符串型的顺序存储数据到一个名为sample.dat文件
 * 分析:用FileOutputStream类创建一个输出流的实例作为一个“流”
 *       将该实例作为DataOutputStream对象的输入
 *       该对象调用各种方法实现写入“流”的功能
 * 图形:
 *  sample.dat<----fs_out(FileOutputStream)<-------out(DataOutputStream)
 *  FileOutputStream类似一个底层函数,DataOutputStream为顶层函数,使用它作为一个桥梁输出到流
 */
public class flowTest {

    public static void main(String[] args) {
        // TODO Auto-generated method stub
        double pi=3.1415;
        int i=10;
        boolean ok=true;
        char c='w';
        String str="我是二逼";
        try{
            FileOutputStream fs_out=new FileOutputStream("sample.dat");
            DataOutputStream out =new DataOutputStream(fs_out);
            out.writeDouble(pi);
            out.writeInt(i);
            out.writeBoolean(ok);
            out.writeChar(c);
            out.writeUTF(str);
            out.close();
        
        }catch(FileNotFoundException fe){
            System.err.println(fe);
        }catch(IOException ioe){
            System.err.println(ioe);
        }
    }

}

 

posted @ 2015-08-13 21:49  平常心,平常心  阅读(2713)  评论(0编辑  收藏  举报