继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

字节内存流:ByteArrayInput(Output)Stream

摄氏du江
关注TA
已关注
手记 41
粉丝 58
获赞 1061

如果有人想学习数据结构或者算法设计的话,以笔者拙见,未见得网上视频会让你更好的收获,踏实坐下来,一支笔,一个本,一本书,自己推算,全是规律很容易看进去。推荐一个数据结构的书:《大话数据结构》,有你看的。
下面这个,不解释,直接上源码:

package cn.dujiang.demo;

import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream;
import java.io.File;
import java.io.FileWriter;
import java.io.InputStream;
import java.io.OutputStream;
import java.io.Writer;

/**
 * 以下操作代码里面,所有的输入和输出流都发生了向上转型,向上转型的好处 是能得到操作模式的统一
 * 但是我们千万不要忽略一个问题,每一个子类实际上都有各自自己的功能。
 * 在ByteArrayOutStream类里面,有一个非常重要的方法:public byte[]toByteArray(),这个方法
 * 可以将所有的保存的字节数据变为字节数组存在。
 * 
 * 
 * @author Dujiang
 *
 */
public class TestDemo {
    public static void main(String[] args) throws Exception {
        String str = "Hello () World!!";// 这是要求被转换的字符串
        // 本次将通过内存操作是实现转换。现将数据保存在内存流里面,而后从里面取出每一个数据
        // 将所有读取的数据设置到内存输入流之中,本次利用向上转型
        InputStream input = new ByteArrayInputStream(str.getBytes());
        // 为了能够将所有的内存流数据取出,可以使用ByteArrayOutputStream
        OutputStream output = new ByteArrayOutputStream();
        int temp = 0; // 读取每一个字节数据
        // 经过此次循环之后,所有的数据都将保存在内存输出流之中
        while ((temp = input.read()) != -1) {// 每次读取一个数据
            output.write(Character.toUpperCase(temp));// 字节输出流
        }
        System.out.println(output);
        input.close();
        output.close();
    }
}
打开App,阅读手记
4人推荐
发表评论
随时随地看视频慕课网APP