- /*
- 需求:定义一个文件输入流,调用read(byte[] b)方法
- 将exercise.txt文件中的所有内容打印出来(byte数组的大小限制为5)
- 思路:如果5个字节一取,那么就说明可能出现乱码的情况
- 那么,可以使用ByteArrayOutputStream来把自己写到内存中,然后再写出去
- */
- import java.io.*;
- class Test {
- public static void main(String[] args){
-
- InputStream bais =null;
- try{
- bais = new FileInputStream(new File("C:\\Users\\sky\\Desktop\\exercise.txt"));
- ByteArrayOutputStream baos = new ByteArrayOutputStream();
- byte[] by = new byte[5];
- int len = 0;
- while((len=bais.read(by)) != -1){
- baos.write(by,0,len);
- }
- System.out.println(baos.toString());
- }catch(IOException e){
- System.out.println("读写异常");
- }finally{
- try{
- if(bais != null)
- bais.close();
- }catch(IOException e){
- System.out.println("关闭异常");
- }
- }
- }
- }
复制代码 |