码迷,mamicode.com
首页 > 编程语言 > 详细

Java从零开始学三十七(JAVA IO- 二进制文件读写)

时间:2015-03-02 06:09:25      阅读:249      评论:0      收藏:0      [点我收藏+]

标签:

一、简述

技术分享

技术分享

二、使用步骤

DataInputStream:

  • 引入相关的类
  • 构造数据输入流的对象(如:FileInputStream,BufferedWriter包装后读取文件等)
  • 读取二进制文件的数据
  • 关闭数据输入流

DataOutputStream:

  • 引入相关的类
  • 构造数据输出流的对象(如:FileOputStream,BufferedWriter包装后写入文件等)
  • 写入二进制文件的数据
  • 关闭数据输入流

三、使用

 

package com.pb.data;

import java.io.BufferedInputStream;
import java.io.BufferedOutputStream;
import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;

/*
 * DataInputStream 和DataOutputStream的使用
 */
public class DataInputAndOutput {

    public static void main(String[] args) {
        /*
         * DataOutputStream写操作
         */
        try {
            //1.实例化FileOutputStream对象
            FileOutputStream fos=new FileOutputStream("d:/test/data.txt");
            //2.实例化BuffereOutputStream 对象
            BufferedOutputStream bos=new BufferedOutputStream(fos);
            //3.实例化DataOutputStream对象
            DataOutputStream dos=new DataOutputStream(bos);
            //4.使用dos来写文件
            dos.writeByte(1);
            dos.writeLong(2);
            dos.writeChar(‘c‘);
            dos.writeUTF("hello java!");
            
            //关闭流
            dos.close();
            bos.close();
            fos.close();
            System.out.println("完成文件写入");
        } catch (FileNotFoundException e) {
            
            e.printStackTrace();
        } catch (IOException e) {
            e.printStackTrace();
        }
        //因为写入的是二进制的所以看不明白
        /*
         * DataIntputStream读操作
         * 读的顺序要与写的顺序一样
         */
        System.out.println("=======开始读取文件=========");
        try {
            //1.实例化FileInputStream对象
            FileInputStream fis=new FileInputStream("d:/test/data.txt");
            //2.实例化BuffereInputStream对象
            BufferedInputStream bis=new BufferedInputStream(fis);
            //3.实例化DataInputStream对象
            DataInputStream dis=new DataInputStream(bis);
            //4.读取文件顺序要与写入顺序一致,不然读出来的是乱码
            System.out.println(    dis.readByte());
            System.out.println(    dis.readLong());
            System.out.println(dis.readChar());
            System.out.println(    dis.readUTF());
            //5.关闭流
            dis.close();
            bis.close();
            fis.close();
            System.out.println("读取文件完成!");
        
            
        
        } catch (FileNotFoundException e) {
            e.printStackTrace();
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
    }

}

 

Java从零开始学三十七(JAVA IO- 二进制文件读写)

标签:

原文地址:http://www.cnblogs.com/liunanjava/p/4307403.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!