字节输入流_InputStream类&FileInputStream类介绍与字节输入流读取字节数据
字节输入流_InputStream类&FileInputStream类介绍
package DemoOutputStream; /* java.io.Inputstream:字节输入流 此抽象类是表示字节输入流的所有类的超类。 定义了所有子类共性的方法: int read()从输入流中读取数据的下一个字节。 int read(byte[] b)从输入流中读取一定数量的字节,并将其存储在缓冲区数组b 中。void close()关闭此输入流并释放与该流关联的所有系统资源。 java.io.FiLeInputstream extends Inputstream FiLeinputstream:文件字节输入流 作用:把硬盘文件中的数据,读取到内存中使用 构造方法: FiLeInputstream ( String name)FiLeInputstream ( File file) 参数:读取文件的数据源 String name:文件的路径File file:文件 构造方法的作用: 1.会创建一个FiLeInputstream对象 2.会把FileInputStream对象指定构造方法中要读取的文件 */ public class Demo03InputStream { }
读取字节数据
1.读取字节:read方法,每次可以读取一个字节的数据,提升为int类型,读取到文件末尾,返回-1,代码使用演示:
hello world
hello FileInputStream
hello method read
大家好 测试read()方法
read() 方法
package DemoOutputStream; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.IOException; /* java.io.Inputstream:字节输入流 此抽象类是表示字节输入流的所有类的超类。 定义了所有子类共性的方法: int read()从输入流中读取数据的下一个字节。 int read(byte[] b)从输入流中读取一定数量的字节,并将其存储在缓冲区数组b 中。void close()关闭此输入流并释放与该流关联的所有系统资源。 java.io.FiLeInputstream extends Inputstream FiLeinputstream:文件字节输入流 作用:把硬盘文件中的数据,读取到内存中使用 构造方法: FiLeInputstream ( String name)FiLeInputstream ( File file) 参数:读取文件的数据源 String name:文件的路径File file:文件 构造方法的作用: 1.会创建一个FiLeInputstream对象 2.会把FileInputStream对象指定构造方法中要读取的文件 读取数据的原理(硬盘-->内存) java程序-->3VM-->oS-->os读取数据的方法-->读取文件字节输入流的使用步骤(重点)∶ 1.创建FiLeInputstream对象,构造方法中绑定要读取的数据源2.使用FileInputstream对象中的方法read ,读取文件 3.释放资源 */ public class Demo03InputStream { public static void main(String[] args) throws IOException { //1.创建FileInputStream对象,构造方法中绑定要读取的数据源 FileInputStream fie = new FileInputStream("c.txt"); //2.使用FiLeInputstream对象中的方法read,读取文件 //int read()读取文件中的一个字节并返回,读取到文件的末尾返回-1 // int len1 = fie.read(); // System.out.println(len1); // int len2 = fie.read(); // System.out.println(len2); // int len3 = fie.read(); // System.out.println(len3); // int len4 = fie.read(); // System.out.println(len4); /* 发现以上读取文件是一个重复的过程,所以可以使用循环优化不知道文件中有多少字节,使用while循环 while循环结束条件,读取到-1的时候结束 布尔表达式(Len = fis.read() )!=-1 1.fis.read():读取一个字节 2.Len - fis.read():把读取到的字节赋值给变量Len 3.(Len = fis.read( ) )!=-1 :判断变量Len是否不等于-1 */ // int len = 0; // while ((len = fie.read())!=-1){ // System.out.println((char) len); // } while (fie.read()!=-1){ System.out.println(fie.read()); } //3.释放资源 fie.close(); } }