博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Java 文本文件和二进制文件的读取(转)
阅读量:4135 次
发布时间:2019-05-25

本文共 2613 字,大约阅读时间需要 8 分钟。

一,文本文件的读取

1,FileInputStream:按字节读取文件
1.1,导入包
import java.io.FileInputStream;
java.io.InputStream;
import java.io.*;
1.2,生成一个InputStream对象
InputStream in = new FileInputStream("myfile//a.txt");//("myfile//a.txt",true),写入的内容追加在原有内容的后面,不覆盖
1.3,一个一个字节地读取文件内容
try {
      int size = in.available();
      char x[] = new char[200];
      for (int i = 0; i < size; i++) {
        x[i] = (char)in.read();
        System.out.print(x[i]);
      }
    }
    catch (IOException ex1) {
      ex1.printStackTrace();
    }
1.4,关闭对象
finally{
      try {
        in.close();
      }
      catch (IOException ex2) {
        ex2.printStackTrace();
      }
    }
=================================================
2,FileOutputStream:按字节写入文件
2.1,导入包
import java.io.*;
2.2,声明一个OutputStream引用
OutputStream out =null;
2.3,构造一个OutputStream对象,并在其中写入内容
try {
     out = new FileOutputStream("b.txt");
    String str ="java终于完了";
    byte[] b = str.getBytes();
    try {
      out.write(b, 0, b.length);
    }
    catch (IOException ex1) {
      ex1.printStackTrace();
    }
2.4,关闭对象
finally{
    try {
      out.close();
    }
    catch (IOException ex2) {
      ex2.printStackTrace();
    }
  }
=================================
3,BufferedReader:按字符读取内容
3.1,导入包
import java.io.*;
3.2,声明一个FileReader和BufferedReader的引用
FileReader fr  = null;
BufferedReader buf =null;
3.3,构造一个FileReader和BUfferedReader的对象
fr = new FileReader("myfile//a.txt");
buf = new BufferedReader(fr);
3.4,按行读取文件内容
try {
    String s = buf.readLine();
    while(s!=null)
    {
      System.out.println(s);
      s =buf.readLine();
    }
  }
  catch (IOException ex1) {
    ex1.printStackTrace();
  }
3.5,关闭对象连接
finally{
    try {
      buf.close();
      fr.close();
    }
    catch (IOException ex2) {
      ex2.printStackTrace();
    }
  }
====================================
4,BufferWriter:按字符写入内容
4.1,导入包
import java.io.*;
4.2,声明一个FileWriter和BufferedWriter的引用
FileWriter fw  = null;
      BufferedWriter buf = null;
4.3,构造一个FileWriter和BUfferedWriter的对象,并写入内容
try {
     fw = new FileWriter("c.txt");
     buf = new BufferedWriter(fw);
    buf.write("你好!!");
  }
  catch (IOException ex) {
    ex.printStackTrace();
  }
4.4,关闭对象连接
finally{
    try {
      buf.close();
      fw.close();
    }
    catch (IOException ex1) {
      ex1.printStackTrace();
    }
  }
====================================
二,二进制文件的读写
1,导入包
import java.io.*;
2,生成FileInputStream,DataInputStream,FileOutputStream,DataOutputStream的对象
FileInputStream fin = new FileInputStream("d://x.jpg");
     DataInputStream da = new DataInputStream(fin);
     FileOutputStream fout = new FileOutputStream("e://b.jpg");
     DataOutputStream dout = new DataOutputStream(fout);
3,写入数据
   int temp ;
    try {
      while ( (temp = da.read()) != -1) {
                   dout.write(temp);
      }
    }
    catch (IOException ex1) {
      ex1.printStackTrace();
    }
4,关闭连接
finally{
    try {
fin.close();
       da.close();
   fout.close();
dout.close();
    }
    catch (IOException ex2) {
      ex2.printStackTrace();
    }
  }

转载地址:http://beivi.baihongyu.com/

你可能感兴趣的文章
【web素材】02-10款大气的购物商城网站模板
查看>>
6种方式实现JavaScript数组扁平化(flat)方法的总结
查看>>
如何实现a===1 && a===2 && a===3返回true?
查看>>
49个在工作中常用且容易遗忘的CSS样式清单整理
查看>>
20种在学习编程的同时也可以在线赚钱的方法
查看>>
隐藏搜索框:CSS 动画正反向序列
查看>>
12 个JavaScript 特性技巧你可能从未使用过
查看>>
127个超级实用的JavaScript 代码片段,你千万要收藏好(上)
查看>>
【视频教程】Javascript ES6 教程27—ES6 构建一个Promise
查看>>
【5分钟代码练习】01—导航栏鼠标悬停效果的实现
查看>>
127个超级实用的JavaScript 代码片段,你千万要收藏好(中)
查看>>
8种ES6中扩展运算符的用法
查看>>
【视频教程】Javascript ES6 教程28—ES6 Promise 实例应用
查看>>
127个超级实用的JavaScript 代码片段,你千万要收藏好(下)
查看>>
【web素材】03-24款后台管理系统网站模板
查看>>
Flex 布局教程:语法篇
查看>>
年薪50万+的90后程序员都经历了什么?
查看>>
2019年哪些外快收入可达到2万以上?
查看>>
【JavaScript 教程】标准库—Date 对象
查看>>
前阿里手淘前端负责人@winter:前端人如何保持竞争力?
查看>>