java中的FileInputStream类中的read()方法是读取一个数据字节,那么读取完一个字节后还会自动读取下一个
4个回答
展开全部
read只会读取一个字节 不会自动读取下一个 只会读第一个字节 和指针不是一回事
如果想用字节流读完文件 一般用一个字节数组的缓冲区 比如200
byte[] buffer = new byte[200];//创建字节数组
int length = 0;
while(-1 != (length = is.read(buffer, 0, buffer.length))){
String str = new String(buffer,0,length);
System.out.println(str);
}
如果想用字节流读完文件 一般用一个字节数组的缓冲区 比如200
byte[] buffer = new byte[200];//创建字节数组
int length = 0;
while(-1 != (length = is.read(buffer, 0, buffer.length))){
String str = new String(buffer,0,length);
System.out.println(str);
}
2015-12-15 · 做真实的自己 用良心做教育
千锋教育
千锋教育专注HTML5大前端、JavaEE、Python、人工智能、UI&UE、云计算、全栈软件测试、大数据、物联网+嵌入式、Unity游戏开发、网络安全、互联网营销、Go语言等培训教育。
向TA提问
关注
展开全部
该类意思是:从InputStream中派生出来的简单输入类。
一、构造方法
FileInputStream(String name); //使用给定的文件名创建对象
FileInputStream(File file); //使用File对象创建FileInputStream对象
二、读取文件
1.使用文件输入流读取文件
FileInuputStream istream=new FileInputStream("myfile.dat");
或:
File f=new File("myfile.dat");
FileInputStream istream=new FileInputStream(f);
构造方法可能会产生异常IOException,故为了把一个文件输入流对象与一个文件关联起来,需:
try { FileInputStream ins=new FileInputStream("myfile.dat");}
catch (IOException e){ System.out.println("File read error:"+e);}
2.从输入流中读取字节
int read(); //从输入流中读取单个字节数据(0~255),如到输入流末尾则返回-1
int read(byte b[]); //读多个字节
int read(byte b[],int off,int len);
3.关闭流
Java在程序结束时自动关闭所有打开的流,但显式关闭任何打开的流是一个好习惯。
close();
一、构造方法
FileInputStream(String name); //使用给定的文件名创建对象
FileInputStream(File file); //使用File对象创建FileInputStream对象
二、读取文件
1.使用文件输入流读取文件
FileInuputStream istream=new FileInputStream("myfile.dat");
或:
File f=new File("myfile.dat");
FileInputStream istream=new FileInputStream(f);
构造方法可能会产生异常IOException,故为了把一个文件输入流对象与一个文件关联起来,需:
try { FileInputStream ins=new FileInputStream("myfile.dat");}
catch (IOException e){ System.out.println("File read error:"+e);}
2.从输入流中读取字节
int read(); //从输入流中读取单个字节数据(0~255),如到输入流末尾则返回-1
int read(byte b[]); //读多个字节
int read(byte b[],int off,int len);
3.关闭流
Java在程序结束时自动关闭所有打开的流,但显式关闭任何打开的流是一个好习惯。
close();
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
读出来的是一个一个的byte
read()需要写循环方法才能把数据挨着读出来。与指针没关系。
read()需要写循环方法才能把数据挨着读出来。与指针没关系。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
是的,read()方法每读一下,他会默认指向下一个字节
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询