标签:视频 输入流 print null java io class redo input 标准
最近,在学习Java,并且学习到了Java的IO(输入与输入),什么是Java IO呢?OutputStream 常用方法
方法声明
功能描述
void write(int b)
向输出流写入一个字节
void write(byte[] b)
把参数b指定的字节数组的所有字节写到输出流
void write(byte[] b,int off,len)
将指定byte数组中从偏移量off开始的len个字节写入输出流
void flush()
刷新此输出流并强制写出所有缓冲的输出字节
void close()
关闭此输出流并释放与该流关联的所有系统资源
字节流读写文件:
FileInputStream 是操作文件的的字节输入流,专门用于读取文件中的数据。
FileOutputStream是操作文件的的字节输出流,专门用于把数据写入文件。
其代码如下:
package Redirecting;
import java.io.*;
public class Redirecting {
public static void main(String[] args) throws IOException {
PrintStream console = System.out;
BufferedInputStream in = new BufferedInputStream(new FileInputStream("/Users/mac/IdeaProjects/JF_Java_EDU/src/Redirecting/Redirecting.java"));
PrintStream out = new PrintStream(new BufferedOutputStream(new FileOutputStream("outtest.txt")));
System.setIn(in);
System.setOut(out);
System.setErr(out);
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String s;
while ((s = br.readLine()) != null)
System.out.println(s);
out.println(s);
out.close();
System.setOut(console);
}
}
FileReader 和FileWriter 用于读写文件;BufferedReader 和BufferdeWriter是具有缓冲功能的流,可以提高读写效率。
BufferedReader中有一重要的方法readLind(),该方法用于一次读取一行文本。
转换流是一种字符流,只能实现字节流读写文本数据的时候,通过转换流来使用字符高效流的方法。而不能实现图片、音频等数据的读写。
InputStreamReader:理解上是字节流通向字符流的桥梁,使用上为:
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
OutputStreamWriter:理解上是字符流通向字节流的桥梁,使用上还是通过字节流转成字符流:
BufferedWriter bw = new BufferedWriter (new OutputStreamWriter(System.out));
最终的输出结果,把你的代码输出到文本文档,如下:
标签:视频 输入流 print null java io class redo input 标准
原文地址:http://blog.51cto.com/1238306/2068588