【JAVA IO】_内存操作流笔记
来源:互联网 发布:淘宝交易怎么做 编辑:程序博客网 时间:2024/05/21 09:53
【JAVA IO】_内存操作流笔记
本章目标
掌握内存操作流的使用
ByteArrayInputStream和ByteArrayOutputStream
之前所讲解的程序中,输出和输入都是从文件中来的,当然,也可以将输出的位置设置在内存之上。此时就要使用ByteArrayInputStream、ByteArrayOutputStream来完成输入、输出功能了。
ByteArrayInputStream的主要完成将内容写入到内存之中,而
ByteArrayOutputStream主要是将内存中的数据输出。
格式:
public class ByteArrayInputStream extends InputStream
public class ByteArrayOutputStream extends OutputStream
构造方法:
public ByteArrayInputStream(byte[] buf)
下面利用内存操作流完成一个大小写字母转化的程序
如果要想把一个字符变为小写,可以通过包装类:Character
实际上此时还可以通过向上转型的关系为OutputStream或InputStream实例化
实际上,以上的操作可以很好的体现对象的多态性,通过实例化其子类的不同,完成的功能也不同,也就相当于输出也就不同,如果是文件,则使用FileXxx,如果是内存,则使用ByteArrayXxx.
本章目标
掌握内存操作流的使用
ByteArrayInputStream和ByteArrayOutputStream
之前所讲解的程序中,输出和输入都是从文件中来的,当然,也可以将输出的位置设置在内存之上。此时就要使用ByteArrayInputStream、ByteArrayOutputStream来完成输入、输出功能了。
ByteArrayInputStream的主要完成将内容写入到内存之中,而
ByteArrayOutputStream主要是将内存中的数据输出。
格式:
public class ByteArrayInputStream extends InputStream
public class ByteArrayOutputStream extends OutputStream
构造方法:
public ByteArrayInputStream(byte[] buf)
下面利用内存操作流完成一个大小写字母转化的程序
import java.io.*;public class ByteArrayDemo01{ public static void main(String[] args){ String str = "HELLOWORLD"; ByteArrayInputStream bis = null; ByteArrayOutputStream bos = null; bis = new ByteArrayInputStream(str.getBytes()); bos = new ByteArrayOutputStream(); int temp = 0; while((temp=bis.read())!=-1){ char c = (char)temp; bos.write(Character.toLowerCase(c));//将字符变小写 } //所有的数据就全部都在ByteArrayOutputStream中 String newStr = bos.toString(); //取出内容 try{ bis.close(); }catch(IOException e){ e.printStackTrace(); } System.out.println(newStr); }}
如果要想把一个字符变为小写,可以通过包装类:Character
实际上此时还可以通过向上转型的关系为OutputStream或InputStream实例化
import java.io.*;public class ByteArrayDemo02{ public static void main(String[] args)throws Exception{ String str = "HELLOWORLD"; InputStream bis = null; OutputStream bos = null; bis = new ByteArrayInputStream(str.getBytes()); bos = new ByteArrayOutputStream(); int temp = 0; while((temp=bis.read())!=-1){ char c = (char)temp; bos.write(Character.toLowerCase(c));//将字符变小写 } //所有的数据就全部都在ByteArrayOutputStream中 String newStr = bos.toString(); //取出内容 try{ bis.close(); }catch(IOException e){ e.printStackTrace(); } System.out.println(newStr); }}
实际上,以上的操作可以很好的体现对象的多态性,通过实例化其子类的不同,完成的功能也不同,也就相当于输出也就不同,如果是文件,则使用FileXxx,如果是内存,则使用ByteArrayXxx.
- 【JAVA IO】_内存操作流笔记
- 【JAVA IO】_内存操作流笔记
- Java IO _内存操作流
- 【JAVA IO】_数据操作流笔记
- 【JAVA IO】_数据操作流笔记
- Java IO学习笔记(五):内存操作流
- Java IO _数据操作流
- Java IO _数据操作流
- java笔记-IO流-IO基本操作
- 〖JAVA IO〗_实例操作:投票程序笔记
- 〖JAVA IO〗_实例操作:投票程序笔记
- 【JAVA IO】_管道流笔记
- 【JAVA IO】_打印流笔记
- 【JAVA IO】_合并流笔记
- 【JAVA IO】_压缩流笔记
- 【JAVA IO】_管道流笔记
- 【JAVA IO】_打印流笔记
- 【JAVA IO】_合并流笔记
- 注册登录模块设计浅谈
- JavaScript中:表达式和语句的区别 —— function和对象直接量 不能匿名定义解惑
- 营销学和成功
- SOAP(wsdl)
- Spring RequestMapping 对前台JSP页面所引用图片路径的影响
- 【JAVA IO】_内存操作流笔记
- discuz后台权限管理
- java new 堆空间 简单实例 测试
- 数据库中链表的使用
- 使用sourcery g++ lite建立交叉编译环境
- 在popupWindow中使用ListView时对ItemView设置fill_parent不起作用的问题
- 保定建行2012年小企业非贴现贷款余额达23亿元
- rails项目怎么提高速度 (linux nginx)(brown)
- Hdu 2044 - 一只小蜜蜂...