java的BytearrayInputStream和BytearrayOutputStream的讲解
2012-07-22 08:03
330 查看
import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream;
import java.io.InputStream;
import java.io.OutputStream;
public class ByteArrayMemoryTest {
public static void main(String[] args) {
//这是建立内存缓存的读写流
// ByteArrayInputStream inputStream = new ByteArrayInputStream("i love you".getBytes());
// ByteArrayOutputStream outputStream = new ByteArrayOutputStream();
// transform(inputStream, outputStream);
//System.in和System.out是键盘输入流和键盘输出流
transform(System.in, System.out);
//这是打印出内存写入流中的数据
// System.out.println(new String(outputStream.toByteArray()));
}
public static void transform(InputStream in, OutputStream out)
{
int ch = 0;
try {
//这是不断的从读入流中读出数据,并不断的写入输出流中,in.read()这是读取一个字节数据,返回的值就是这个字节数据的值
while((ch = in.read()) != -1)
{
int chUpper = Character.toUpperCase(ch);
//这是往内存写入流中写入一个整形数据,就算你写入一个字节数据,也会被转换成一个整形数据
out.write(chUpper);
}
} catch (Exception e) {
e.printStackTrace();
}
}
}
//附录
关闭 ByteArrayInputStream 无效。此类中的方法在关闭此流后仍可被调用,而不会产生任何 IOException。
此类实现了一个输出流,其中的数据被写入一个字节数组。缓冲区会随着数据的不断写入而自动增长。可使用
关闭 ByteArrayOutputStream 无效。在关闭此流后且没有生成 IOException 时,可以调用此类中的该方法。
import java.io.ByteArrayOutputStream;
import java.io.InputStream;
import java.io.OutputStream;
public class ByteArrayMemoryTest {
public static void main(String[] args) {
//这是建立内存缓存的读写流
// ByteArrayInputStream inputStream = new ByteArrayInputStream("i love you".getBytes());
// ByteArrayOutputStream outputStream = new ByteArrayOutputStream();
// transform(inputStream, outputStream);
//System.in和System.out是键盘输入流和键盘输出流
transform(System.in, System.out);
//这是打印出内存写入流中的数据
// System.out.println(new String(outputStream.toByteArray()));
}
public static void transform(InputStream in, OutputStream out)
{
int ch = 0;
try {
//这是不断的从读入流中读出数据,并不断的写入输出流中,in.read()这是读取一个字节数据,返回的值就是这个字节数据的值
while((ch = in.read()) != -1)
{
int chUpper = Character.toUpperCase(ch);
//这是往内存写入流中写入一个整形数据,就算你写入一个字节数据,也会被转换成一个整形数据
out.write(chUpper);
}
} catch (Exception e) {
e.printStackTrace();
}
}
}
//附录
ByteArrayInputStream包含一个内部缓冲区,该缓冲区存储从流中读取的字节。内部计数器跟踪
read方法要提供的下一个字节。
关闭 ByteArrayInputStream 无效。此类中的方法在关闭此流后仍可被调用,而不会产生任何 IOException。
此类实现了一个输出流,其中的数据被写入一个字节数组。缓冲区会随着数据的不断写入而自动增长。可使用
toByteArray()和
toString()检索数据。
关闭 ByteArrayOutputStream 无效。在关闭此流后且没有生成 IOException 时,可以调用此类中的该方法。
相关文章推荐
- Java IO流学习总结六:ByteArrayInputStream、ByteArrayOutputStream
- struts2 下载问题java.lang.ClassCastException: java.io.ByteArrayInputStream cannot be cast to
- 转存:JAVA IO - ByteArrayInputStream和BufferedInputStream的区别
- java.io.ByteArrayInputStream的mark方法
- java.ByteArrayInputStream与ByteArrayOutputStream
- Java IO操作——内存操作流{ByteArrayInputStream、ByteArrayOutputStream)
- [转载]java.ByteArrayInputStream与ByteArrayOutputStream再次理解
- Java IO之DataInputStream,ObjectInputStream,ByteArrayInputStream等
- Java IO深入理解字节和字符数组(ByteArrayInputStream、ByteArrayOutputStream、CharArrayReader、CharArrayWriter)
- java IO笔记(ByteArrayInputStream/ByteArrayOutputStream)
- Java之IO(三)ByteArrayInputStream和ByteArrayOutputStream
- java基本I/O系列--ByteArrayInputStream 介绍
- Java使用ByteArrayOutputStream 和 ByteArrayInputStream 避免重复读取配置文件的方法
- java.ByteArrayInputStream与ByteArrayOutputStream再次理解
- java io系列02之 ByteArrayInputStream的简介,源码分析和示例(包括InputStream)
- java ByteArrayInputStream和ByteArrayOutputStream基本操作
- Java IO:常见Java IO流介绍(ByteArrayInputStream,ObjectInputStream,BufferedInputStream)
- Java IO: ByteArrayInputStream
- java中ByteArrayInputStream和ByteArrayOutputStream类用法
- java基础之IO流--ByteArrayInputStream(没有使用系统资源不会抛异常的IO流对象)