Java IO输入输出流 字符数组流 ByteArrayOutputStream/ByteArrayInputStream

Java IO输入输出流 字符数组流 ByteArrayOutputStream/ByteArrayInputStream

private static void StringWriterAndReader() throws Exception {
//字符串流(字符串的内存流)
//字符串输入流
StringWriter sWriter=new StringWriter();
sWriter.write("文档在手,天下我有!");
sWriter.write("吃得苦中苦,方为人上人!");
// System.out.println(sWriter.toString());
//字符串的输出流
StringReader sReader=new StringReader(sWriter.toString());
char[] buffer =new char[1024];
int len=-1;
while((len=sReader.read(buffer))!=-1){
System.out.println(new String(buffer,0,len) );
}
sWriter.close();
sReader.close(); } private static void charArray() throws IOException {
//字符数组流/内存流
//字符数组输出流:程序----->内存
CharArrayWriter writer =new CharArrayWriter();
writer.write("欢迎学习Java!");
char[] content=writer.toCharArray();
//字节数组输入流:内存----->程序
CharArrayReader reader=new CharArrayReader(content);
int len=-1;
char[] ch=new char[1024];
while((len=reader.read(ch))!=-1){
System.out.println(new String(ch,0,len));
}
writer.close();
reader.close();
} private static void byteArray() throws Exception {
//字节数组流/内存流
//字节数组输出流:程序----->内存
ByteArrayOutputStream out=new ByteArrayOutputStream();
out.write("大家好啊!".getBytes());
byte[] bye=out.toByteArray();
//字节数组输入流:内存----->程序
ByteArrayInputStream in=new ByteArrayInputStream(bye);
byte[] buffer=new byte[1024];
int len=-1;
while((len=in.read(buffer))!=-1){
System.out.println(new String(buffer,0,len));
}
out.close();
in.close();
}

合并流(SequenceInputStream)

//创建顺序流对象
SequenceInputStream in= new SequenceInputStream(new FileInputStream("file/copy.txt"), new FileInputStream("file/copy12.txt"));
byte[] buffer=new byte[1024];
int len=-1;
while((len=in.read(buffer))!=-1){
System.out.println(new String(buffer,0,len));
}
in.close();
上一篇:This Handler class should be static or leaks might occur,Handler和Context使用的注意事项!


下一篇:Java IO 输入输出流 详解 (一)***