JAVA之IO技术用字节流对文本文件进行读写FileInputStream,FileInputStream
2014-05-02 22:13
423 查看
package ioTest.io2; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.IOException; /* * IO: * 字符流:Writer,Reader * 字节流:OutPutStream,InPutStream * * 下面的实例仍然是对文本文件进行操作。但是字节流大多用于操作非文本文件, * 比如音频视频图片等文件 */ public class FileSteam { public static void main(String[] args) throws IOException { //writeFile(); readFile_3(); } //三种不同的方式的读取文件 //读一个字节 public static void readFile_1() throws IOException { FileInputStream fInputStream=new FileInputStream("ioTest1.txt"); int ch; while((ch=fInputStream.read())!=-1) { System.out.println((char)ch); } fInputStream.close(); } //读指定长度字节数组 public static void readFile_2() throws IOException { byte[] buf=new byte[1024]; int len=0; FileInputStream fInputStream=new FileInputStream("ioTest1.txt"); while((len=fInputStream.read(buf))!=-1) { System.out.println(new String(buf, 0, len)); } fInputStream.close(); } //读全长度的字节数组,也就是说一次性读取 public static void readFile_3() throws IOException { FileInputStream fInputStream=new FileInputStream("ioTest1.txt"); int len=fInputStream.available(); byte[] buf=new byte[len]; fInputStream.read(buf); System.out.println(new String(buf)); fInputStream.close(); } /* * 比较以上三种方式,第二种方式比第一方式更优越。 * 第三种方式在读写一些小文件的时候,看似是比前两种方式好。 * 但是文件很大的情况下,在第三种情况下,如果内存一次性不能存储这么大容量的文件时候 * 就会出现内存溢出。 * 所以最终和最常用的我们有限选择第二种方式。 */ public static void writeFile() throws IOException { //创建一个流 FileOutputStream foStream=new FileOutputStream("ioTest1.txt"); foStream.write("abcde".getBytes()); //foStream.flush(); //发现没有上面的话,仍然写入成功。原因是字节操作时读写操作的最小单位。 //所以这里暂时不用flush。字符操作实际上底层是基于字节的,所以又两个字节-一个字符的一个缓冲处理 //所以需要刷新 foStream.close(); } }
相关文章推荐
- Java IO操作——字节流进行读写操作
- java File/IO读写文件 字节流
- Java IO学习基础之读写文本文件
- java IO 字节流(一)FileInputStream与FileOutputStream
- JAVA之IO技术中对指定存在的文件进行续写
- Java基础之IO流,以字节流的方式操作读写文件FileOutputStream和FileInputStream的使用
- 黑马程序员________Java中IO技术字节流字符流的应用及File类学习笔记
- Java读写Properties文件及JavaIO中字节流和字符的转换
- Java读写Properties文件及JavaIO中字节流和字符的转换
- JAVA IO :使用带缓冲的字节流读写数据
- Java创建一个text文本文件,并对其进行读写操作
- java中IO操作 利用文件流 过滤流对文件进行读写操作
- java中IO操作 利用文件流 过滤流对文件进行读写操作
- JAVA进行基础的文件IO读写
- Java创建一个文本文件,并对其进行读写操作
- 黑马程序员-JAVA高级视频_IO输入与输出-19天-7(字节流File读写操作)
- java-IO操作——使用字节流读写数据
- Java IO学习基础之读写文本文件
- java中IO操作 利用文件流 过滤流对文件进行读写操作
- 黑马程序员—java技术blog—第一篇 IO概述及字节流总结