JavaSE 高级 第09节 字节数组输入流ByteArrayInputStream

2016-07-24

1,ByteArrayInputStream

FileInputStream的输入源是文件。

ByteArrayInputStream的输入源是字节数组。

reset() 重置到mark标记的位置,如果没有调用过mark方法,

则重置到缓冲区(ByteArray)的起始位置

mark(int)

package com.java1995;

import java.io.ByteArrayInputStream;

public class TestByteArrayInputStream {

    public static void main(String[] args) {
        String temp = "abcdefghijklmnopqrstuvwxyz";
        byte[] b = temp.getBytes();

        ByteArrayInputStream bis = new ByteArrayInputStream(b);

        for (int i = 0; i < 2; i++) {
            int c;
            c = bis.read();
            while (c != -1) {
                if (i == 0) {
                    System.out.print((char) c);
                } else {
                    System.out.print(Character.toUpperCase((char) c));
                }
                c = bis.read();
            }
            System.out.println();
            bis.reset();
        }
    }
}

【参考资料】

[1] Java轻松入门经典教程【完整版】

时间: 2024-08-04 11:59:17

JavaSE 高级 第09节 字节数组输入流ByteArrayInputStream的相关文章

JavaSE 高级 第10节 字节数组输出流ByteArrayOutputStream

2016-07-24 1,ByteArrayOutputStream FileOutputStream 把文件作为写入的目的地 ByteArrayOutputStream 把字节数组作为写入的目的地 package com.java1995; import java.io.BufferedInputStream; import java.io.ByteArrayInputStream; import java.io.IOException; public class Test { public

六、字节数组流ByteArrayInputStream&amp;ByteArrayOutputStream

一.前提 经常而言我们都是针对文件的操作,然后带上缓冲的节点流进行处理,但有时候为了提升效率,我们发现频繁的读写文件并不是太好,那么于是出现了字节数组流,即存放在内存中,因此有称之为内存流: 1.ByteArrayInputStream类 ByteArrayInputStream包含一个内部缓冲区,其中包含可以从流中读取的字节. 内部计数器跟踪由read方法提供的下一个字节. 关闭一个ByteArrayInputStream没有任何效果. 该流中的方法可以在流关闭后调用,而不生成IOExcept

JavaSE 高级 第12节 字符输入流InputStreamReader

2016-07-24 Reader 1,InputStreamReader   字节流通向字符流的桥梁 FileInputStream fis=null; InputStreamReader isr=null; fis=new FileInputStream( "C:\\Users\\admin\\Desktop\\in.txt"); isr=new InputStreamReader(fis,"UTF-8"); package com.java1995; publ

JavaSE 高级 第07节 文件输入流FileInputStream

2016-07-24 InputStream 1,FileInputStream 因为字节流每次读取一个字节,而一个字节是无法完整的描述一个中文的, 所以会出现英文正常,中文乱码的情况. package com.java1995; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.IOException; public class TestFileInputStream { p

JavaSE 高级 第06节 初识I、O流

2016-07-24 input  output 1,流的概念 输入流是读数据. 输出流是写数据. 输入输出的概念针对程序来说. 2,字节流 用于以字节为单位的输入输出,主要是处理字节或者二进制数据的各种输入输出. 一般用于处理图像.声音文件. InputStream 是所有字节输入流的祖先类. OutputStream 是所有字节输出流的祖先类. 3,字符流 以字符为基本处理的单位,主要用于处理字符或者是文本类型.一般用作处理文本 读取存储以及与网络的文本信息的交互. Reader 是所有字符

JavaSE 高级 第15节 写文件类FileWriter

2016-07-24 FileReader 1,FileWriter 课下作业: c:\ 定义两个文件 in.txt,out.txt 然后,in.txt里面写入部分中文以及英文. 然后写程序读取in.txt的内容,写到out.txt里面. 规定:读文件的类必须是FileReader 写文件的类必须是FileWriter. package com.java1995; import java.io.FileWriter; import java.io.IOException; public clas

JavaSE 高级 第13节 字符输出流OutputStreamWriter

2016-07-24 Reader InputStreamReader Writer OutputStreamWriter package com.java1995; import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.IOException; import java.io.OutputStreamWriter; public class TestOutputStreamWri

JavaSE 高级 第14节 读文件类FileReader

2016-07-24 InputStreamReader  : FileInputStream fis=new FileInputStream(file); InputStreamReader isr=new InputStreamReader(fis); FileReader: FileReader fr=new FileReader("C:\\Users\\admin\\Desktop\\in.txt"); 1,FileReader package com.java1995; im

JavaSE 高级 第11节 缓冲输入输出字节流

2016-07-24 FileInputStream ByteArrayInputStream 1,BufferedInputStream 2,BufferedOutputStream package com.java1995; import java.io.BufferedInputStream; import java.io.BufferedOutputStream; import java.io.FileInputStream; import java.io.FileNotFoundExc