import java.io.FileInputStream; import java.io.IOException; import java.io.InputStream; /* 文件字节输入流,每次读取一个字节 */ public class FileInputStreamTest01 { public static void main(String[] args) throws IOException { // 1. 创建文件字节输入流管道,与源文件接通 InputStream is = new FileInputStream("day01\\src\\file\\file02.txt"); // 2. 开始读文件 // public int read(): 每次读取一个字节返回,如果没有数据,则返回-1 // int b1 = is.read(); // System.out.println((char) b1); // // int b2 = is.read(); // System.out.println((char) b2); // // int b3 = is.read(); // System.out.println(b3); // 3. 使用循环读取文件 int b; while ((b = is.read()) != -1){ System.out.print((char) b); } } }
import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.IOException; import java.io.InputStream; /* 文件字节输入流,每次读取多个字节 */ public class FileInputStreamTest02 { public static void main(String[] args) throws IOException { // 1. 创建文件字节输入流管道,与源文件接通 InputStream is = new FileInputStream("day01\\src\\file\\file02.txt"); // // 2. 开始读取文件中的字节数据,每次读取多个字节 // // public int read(byte[] buffer) 一次读取多个字节 // byte[] buffer = new byte[3]; // int len = is.read(buffer); // String rs = new String(buffer); // System.out.println(rs); //abc // System.out.println("当前读取的字节数量为" + len); //3 // // // 注意: 读取多少字符,倒出多少字符 (文件中的数据为abc66) // int len2 = is.read(buffer); // String rs2 = new String(buffer); // System.out.println(rs2); //66c // System.out.println("当前读取的字节数量为" + len2); //2 // 3. 使用循环改造 byte[] buffer = new byte[3]; int len; // 记录每次读取了多少个字节 while ((len = is.read(buffer)) != -1) { String rs = new String(buffer, 0, len); System.out.print(rs); } is.close(); //关闭流 } }
import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.IOException; import java.io.InputStream; /* 文件字节输入流,每次读取全部字节 */ public class FileInputStreamTest03 { public static void main(String[] args) throws IOException { // 1. 创建文件字节输入流管道,与源文件接通 InputStream is = new FileInputStream("day01\\src\\file\\file02.txt"); // 2. 使用readAllBytes方法读取全部字节 byte[] buffer = is.readAllBytes(); System.out.println(new String(buffer)); //abc66 } }