博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
内存流的使用——基本使用
阅读量:3962 次
发布时间:2019-05-24

本文共 1058 字,大约阅读时间需要 3 分钟。

内存流是将流的输入输出位置放到内存上,而不是建立在内存和外部设备之间,此时的操作应该以内存为操作点,和Java程序在一起,可以看做是java和内存中的数据之间的交互。

应用:网络传输,会将文件放到内存,这时需要用内存流读取到java。

主要构造方法

//参数是byte类型数组ByteArrayInputStream bais = new ByteArrayInputStream(byte[] buf);//内存输出流ByteArrayOutputStream baos = new ByteArrayOutputStream();

内存输入流ByteArrayInputStream主要成员方法

//从该输入流读取下一个数据字节int read();read(byte[] b, int off, int len);//关闭流void close();

内存输出流ByteArrayOutputStream主要成员方法

//写入void write(int b); void write(byte[] b, int off, int len); //关闭流void close();

案例演示

/*** 要求:将读取到的大写字母转为小写字母输出*/public static void main(String[] args) throws IOException {
String str = "ABCDEF"; //创建流 ByteArrayInputStream bais = new ByteArrayInputStream(str.getBytes()); ByteArrayOutputStream baos = new ByteArrayOutputStream(); //读取,注意read()方法返回值是int类型 int d = -1; while ((d = bais.read()) != -1) {
char c = Character.toLowerCase((char) d); //int强转为char baos.write(c); //这里的char又转为int类型,属于默认转型,调用void write(int b) } bais.close(); baos.close(); System.out.println(baos.toString());}//打印结果abcdef

转载地址:http://uxgzi.baihongyu.com/

你可能感兴趣的文章
P24-c++类继承-01详细的例子演示继承的好处
查看>>
P8-c++对象和类-01默认构造函数详解
查看>>
P1-c++函数详解-01函数的默认参数
查看>>
P3-c++函数详解-03函数模板详细介绍
查看>>
P4-c++函数详解-04函数重载,函数模板和函数模板重载,编译器选择使用哪个函数版本?
查看>>
P5-c++内存模型和名称空间-01头文件相关
查看>>
P6-c++内存模型和名称空间-02存储连续性、作用域和链接性
查看>>
P9-c++对象和类-02构造函数和析构函数总结
查看>>
P10-c++对象和类-03this指针详细介绍,详细的例子演示
查看>>
Mule ESB-Content-Based Routing Tutorial(1)
查看>>
Mule ESB-Content-Based Routing Tutorial(2)
查看>>
Mule ESB-Content-Based Routing Tutorial(3)
查看>>
年末项目经验总结
查看>>
做事情要放下面子,拿起责任
查看>>
敏捷开发实践(1)-故事工作量估算导致的问题
查看>>
记一次解决jenkins持续构建,自动部署的问题
查看>>
敏捷开发实践(2)-要不要文档?
查看>>
写博意味着什么
查看>>
比较Cint() , int() , fix() ,round()的区别
查看>>
举例说明常用字符串处理函数
查看>>