初学Java,IO之重定向标准输入\输出(四十五)

来源:互联网 发布:开一个淘宝店多少钱 编辑:程序博客网 时间:2024/05/21 06:31

重定向标准输入/输出一共有三个方法

setErr 重定向“标准”错误输出流

setIn  重定向“标准”输入流

setOut 重定向"标准"输出流

下面使用重定向输出流把System.out输出重定向为向文件输出,而不是在屏幕上输出

import java.io.*;public class  RedirectOut{public static void main(String[] args) {    PrintStream ps = null;    try    {//一次创建PrintStream输出流ps = new PrintStream(new FileOutputStream("out.txt"));//将标准输出重定向到ps输出流System.setOut(ps);//向标准输出一个字符串System.out.println("普通字符串");//向标准输出输出一个对象System.out.println(new RedirectOut());    }    catch (IOException ex)    {ex.printStackTrace();    }finally{if(ps != null){ps.close();}}}}
下面的System.in输入被重定向,本来是使用键盘输入为标准输入,而使用重定向后,则是使用RedirectIn.java文件作为标准输入源

import java.io.*;import java.util.Scanner;public class  RedirectIn{public static void main(String[] args) {FileInputStream fis = null;    try    {//一次创建PrintStream输出流fis = new FileInputStream("RedirectIn.java");//将标准输出重定向到pis输入流System.setIn(fis);//使用System.in创建Scanner对象,用于获取标准输入Scanner sc = new Scanner(System.in);//增加下面一行将只把回车作为分隔符sc.useDelimiter("\n");//判断是否还有下一个输入项while(sc.hasNext()){//输出输入项System.out.println("键盘输入的内容是:" + sc.next());}    }    catch (IOException ex)    {ex.printStackTrace();    }finally{if(fis != null){try{fis.close();}catch (IOException ex){ex.printStackTrace();}}}}}



原创粉丝点击