欢迎来到天天文库
浏览记录
ID:31317121
大小:71.50 KB
页数:4页
时间:2019-01-08
《javaio字节流读取文件方式总结》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、JavaIO字节流读取文件总结本文对java10流的读取文件的方式进行比较全面的总结,一个是基本的读取方式,另一个是高效的读取方式。一.基本的读取方式:使用Fileinputstreampackagecom.xykj.filelnput;importjava.io.File;importjava.io.FilelnputStream;importjava.io」OException;publicclassFilelnputTest{/***文件读取文件Fileinputstream的使用**/publicstaticvoidmain(String[]args){//需要读取的文
2、件,参数是文件的路径名加文件名Filefile=newFile("D:/Hello.java");if(file.isFile()){//以字节流方法读取文件FilelnputStreamfis=null;try{fis=newFilelnputStream(file);//设置一个,每次装载信息的容器byte[]buf=newbyte[1024];//定义一个StringBuffer用來存放字符串StringBuffersb=newStringBuffer();//开始读取数据intlen=0;//每次读取到的数据的长度while((len=fis.read(buf))!=-
3、1){//len值为时,表示没有数据了//append方法往sb对象里面添加数据sb.append(newString(bufz0,len,"utf-8"));}//输出字符串System.out.println(sb.toStringO);}catch(lOExceptione){e.printStackTrace();}}else{System.out.printlnf'^;件不存在!");}}}二.高效的读取方式:FilelnputStream和BufferInputStream一起使用java中BufferedlnputStream类相比InputStream类,提高了
4、输入效率,增加了输入缓冲区的功能。InputStream流是指将字节序列从外设或外存传递到应用程序的流。BufferedlnputStream流是指读取数据时,数据首先保存进入缓冲区,其后的操作直接在缓冲区中完成。packagecom.xykj.filelnput;importjava.io.BufferedlnputStream;importjava.io.ByteArrayOutputStream;importjava.io.FilelnputStream;importjava.io」OException;publicclassBufferedlnputStreamTest
5、{/***高效输入流的使用BufferedlnputStream的使用**/publicstaticvoidmain(String[]args){//定义一个输入流对象FilelnputStreamfis=null;//定义一个存放输入流的缓冲对象BufferedlnputStreambis=null;//定义一个输出流,相当StringBuffer(),会根据读収数据的大小,调整byte的数组长度ByteArrayOutputStreambaos=newByteArrayOutputStream();try{//把文件路径和文件名作为参数告诉读取流fis=newFilelnp
6、utStream(HD:/tt.javan);//把文件读取流对象传递给缓存读取流对象bis=newBufferedlnputStream(fis);//获得缓存读取流开始的位置intlen二bis.read();System.out.println("len二”+len);//定义一个容量来盛放数据byte[]buf=newbyte[1024];while((len=bis.read(buf))!=-1){//如果有数据的话,就把数据添加到输出流〃这里直接用字符串StringBuffer的append方法也可以接收baos.writefbuf,0,len);}//把文件输出流
7、的数据,放到字节数组byte[]buffer=baos.toByteArray();//打印输出System.out.println(newString(buffer,HgbkH));}catch(Exceptione){e.printStackTrace();}finally{try{〃关闭所有的流baos.close();bis.close));fis.close();}catch(lOExceptione){e.printStackTrace();}这是两种比较基本的读取文件的方式,也
此文档下载收益归作者所有