
正文
java-IO-基本输出输入流
提示:扫一扫查出行【扫一扫了解最新限行尾号】
复制提示
/ 标准输入输出流: 直接类名调用 一经创建无法改变 public static final PrintStream err “标准”错误输出流。 public static final InputStream in “标准”输入流。 用来读取键盘输入的数据 调用:System.in InputStream is =System.in; Scanner sc=new Scanner(System.in);读取键盘录入 public static final PrintStream out “标准”输出流。 System.out.println()将数据输在再命令行 */
package IO;import java.io.BufferedReader;import java.io.BufferedWriter;import java.io.FileNotFoundException;import java.io.FileReader;import java.io.FileWriter;import java.io.IOException;import java.io.InputStream;import java.io.OutputStream;import java.io.OutputStreamWriter;import java.io.PrintStream;import java.io.Writer;public class IO {public static void main(String[] args) throws IOException{ /* 例子:输出指定文件在命令行 项目文件读取=====字符输入流 命令行====基本的输出流 由于标准输出流是一个字节的输出流,所以只能输出字节或者字节组,但是我们读取道得数据则是字符串,我们通过GetByte来获取字节数值 我们想通过标准输出流输出字符串, 把标准输出流转化成一种字符输出流,OutputStreamWriter OutputStreamWriter(OutputStream out) 创建使用默认字符编码的 OutputStreamWriter。 把标准输入流转化成一种字符输入流,InputStreamReader InputStreamReader(InputStream in) 创建一个使用默认字符集的 InputStreamReader。 method(); method01(); method02(); */ /*例子:读取键盘录入的数据,并输出到a.txt文件当中 创建字节输入流 创建字符输入流 */ InputStream is=System.in; FileWriter fw=new FileWriter("a.txt"); byte[] bys= new byte[2048]; int len; while((len=is.read(bys))!=-1) { fw.write(new String(bys)); fw.flush(); } is.close(); fw.close();}public static void method02() throws FileNotFoundException, IOException { BufferedReader br=new BufferedReader(new FileReader("Systemout.txt")); Writer w=new OutputStreamWriter(System.out); BufferedWriter bw=new BufferedWriter(w); String line; while((line = br.readLine())!=null) { bw.write(line); bw.newLine(); } w.close(); br.close();}public static void method01() throws FileNotFoundException, IOException { // 创建输入流对象 BufferedReader br=new BufferedReader(new FileReader("Systemout.txt")); Writer w=new OutputStreamWriter(System.out); String line; while((line = br.readLine())!=null) { w.write(line); w.write("\r\n"); } w.close(); br.close();}public static void method() throws FileNotFoundException, IOException { // 创建输入流对象 BufferedReader br=new BufferedReader(new FileReader("Systemout.txt")); // 创建输出基本流 OutputStream os=System.out; String line; while((line=br.readLine())!=null) { os.write(line.getBytes()); } os.close(); br.close();}}
总结:IO中的File是文件操作 字符缓冲类BufferWriter BufferReader 基本输入输出流 System.in System.out 转化流OutputStreamWriter InputStreamReader
基本输入输出流只能带入数组参数 这时候需要把字节的输入输出流转化为字符类的输入输出流 这时候就有可转化流 将基本的输入输出流转换为字符高效缓冲流BufferWriter BufferReader







